доработка Спец Предложений
#1
Отправлено 15 September 2013 - 09:50 AM
#2
Отправлено 15 September 2013 - 03:02 PM
Вот как Вы в админке в разделе "СпецПредложения" номера сортировки поставили, так оно выводиться и будет. Судя по "order by b.sort_order" в home.php. Совершенно не понятно, с каким кодом надо помогать, если оно так работает штатно "из коробки".Доброго времени суток - нужна помощь, хочу вывести спец предложение задом наперед тоисть в админке проставил 7, 6, 5, 4, 3, 2, 1 как это реализовать (помогите с кодом) заранее благодарю
#3
Отправлено 15 September 2013 - 03:12 PM
и товар меняется и чтобы не утруждать перебиванием 100 цифр
#4
Отправлено 15 September 2013 - 03:45 PM
Так обратно КАКОЙ сортировке Вы хотите сделать? )))и товар меняется и чтобы не утруждать перебиванием 100 цифр
Видите ли, отсортировать в ОБРАТНОМ направлении товары не сложно, но - сюрприз! - для этого надо, чтобы существовала некая исходная сортировка, обратно которой Вы хотите сделать .
PS. Штатно-то никакой сортировки нет, показывается в порядке добавления в таблицу. А 1234567 вы заносите ручками точно так же, как и 7654321.
#5
Отправлено 15 September 2013 - 04:21 PM
PS. Штатно-то никакой сортировки нет, показывается в порядке добавления в таблицу. А 1234567 вы заносите ручками точно так же, как и 7654321.
Ну как это нет, если показывается в порядке добавления значит уже есть сортировка по дате добавления.
#6
Отправлено 15 September 2013 - 04:38 PM
#7
Отправлено 15 September 2013 - 05:32 PM
{* шаблон вывода спецпредложений *}
{if $special_offers}
<table cellspacing="0" cellpadding="0" width="100%">
{section name=i loop=$special_offers}
{if $smarty.section.i.index is div by $smarty.const.CONF_TAB_COUNT_IN_HOME}
<tr>
{/if}
<td width="{math equation="100 / x" x=$smarty.const.CONF_TAB_COUNT_IN_HOME format="%d"}%" align="left" valign="top">
{* формирование названия товара *}
{if $smarty.const.CONF_MOD_REWRITE eq 1}
{assign var="link" value="<a href='product_`$special_offers[i].productID`.html'>`$special_offers[i].name`</a>"}
{else}
{assign var="link" value="<a href='index.php?productID=`$special_offers[i].productID`'>`$special_offers[i].name`</a>"}
{/if}
{assign var="preheader" value="<a href='`$smarty.const.ADMIN_FILE`?productID=`$special_offers[i].productID`&eaction=prod' title='`$smarty.const.STRING_EDITPR`' style='float: right;'>+</a>"}
{if $isadmin eq "yes"}{assign var="postheader" value=`$preheader``$link`}{else}{assign var="postheader" value=$link}{/if}
{* вывод названия товара *}
<table border="0" width="" cellspacing="0" cellpadding="0" class="tableBox_output_table">
<tr>
<td class="main">
<table border="0" width="" cellspacing="0" cellpadding="0">
<tr>
<td align="left" style="width:25%;">
<table cellpadding="0" cellspacing="0" border="0" class="prod2_table">
<tr><td class="prod2_td">
<table cellpadding="0" cellspacing="0" border="0">
<tr><td class="pic2_padd">
<table cellpadding="0" cellspacing="0" border="0" align="center" class="wrapper_pic_table">
<tr height="150px"><td class="wrapper_pic_td">
{if $smarty.const.CONF_DISPLAY_FOTO eq 1}
<a href="{if $smarty.const.CONF_MOD_REWRITE eq 1}product_{$special_offers[i].productID}.html{else}index.php?productID={$special_offers[i].productID}{/if}"><a href="{if $smarty.const.CONF_MOD_REWRITE eq 1}product_{$special_offers[i].productID}.html{else}index.php?productID={$special_offers[i].productID}{/if}"><img src="data/{$special_offers[i].default_picture}" alt="{$special_offers[i].name}"></a>
{* <a href="{if $smarty.const.CONF_MOD_REWRITE eq 1}product_{$special_offers[i].productID}.html{else}index.php?productID={$special_offers[i].productID}{/if}"><img src="data/{$special_offers[i].default_picture}" alt="{$special_offers[i].name}" ></a> *}
{/if}
{* вывод фотографии справа (если включено в настройках) *}
{if $smarty.const.CONF_DISPLAY_FOTO eq 0}
<a href="{if $smarty.const.CONF_MOD_REWRITE eq 1}product_{$special_offers[i].productID}.html{else}index.php?productID={$special_offers[i].productID}{/if}"><img src="data/{$special_offers[i].default_picture}" alt="{$special_offers[i].name}"></a>
{* <a href="{if $smarty.const.CONF_MOD_REWRITE eq 1}product_{$special_offers[i].productID}.html{else}index.php?productID={$special_offers[i].productID}{/if}"><img src="data/{$special_offers[i].default_picture}" alt="{$special_offers[i].name}"></a> *}
{/if}
</td></tr>
</table>
</td></tr>
<tr height="35px"><td class="desc desc2_padd">{if $special_offers[i].brief_description}{$special_offers[i].brief_description}{/if}</td></tr>
<tr><td class="price2_padd"><div class="fl_left"> <span class="productSpecialPrice">{if $special_offers[i].cena <= 0}{$smarty.const.STRING_NOPRODUCT_IN}{else}{$special_offers[i].Price}{/if}</span></div><div class="fl_right"> <a href="{if $smarty.const.CONF_MOD_REWRITE eq 1}product_{$special_offers[i].productID}.html{else}index.php?productID={$special_offers[i].productID}{/if}">Подробнее</a></div></td></tr>
</table>
</td></tr>
</table></td>
</tr>
</table>
</td>
</tr>
</table>
{if ($smarty.section.i.index+1) is div by $smarty.const.CONF_TAB_COUNT_IN_HOME}
</tr>
{else}
<td><img src="data/{$smarty.const.TPL}/pixel.gif" class="delim" alt=""></td>
{/if}
{/section}
</table>
{/if}
в спец предложениях есть сортировка вот хочу чтобы сортировка выводилась задом наперед
Детали (хочу вывести спец предложение задом наперед тоисть в админке проставил 1, 2, 3, 4, 5, 6, 7 но чтобы на сайте отображалось 7, 6, 5, 4, 3, 2, 1 как это реализовать (помогите с кодом) заранее благодарю)
#8
Отправлено 15 September 2013 - 07:51 PM
Ну есть, и что?вот есть код
В нем тоже можно вывести массив $special_offers в обратном порядке используя возможности {section}.
Но зачем, если куда проще в home.php и я выше уже написал, как это сделать?
Вы определитесь - "в админке проставил 1, 2, 3, 4, 5, 6, 7" или таки "чтобы не утруждать перебиванием 100 цифр". Если первое, то достаточно home.php в ODER BY сменить направление сортировки на DESС. Ну а приведенное выше решение сработает в любом случае. В принципе, что так, что этак - изменить одну строку .Детали (хочу вывести спец предложение задом наперед тоисть в админке проставил 1, 2, 3, 4, 5, 6, 7 но чтобы на сайте отображалось 7, 6, 5, 4, 3, 2, 1
#9
Отправлено 16 September 2013 - 11:23 AM
#10
Отправлено 16 September 2013 - 12:42 PM
Я уже не знаю, как "более конкретно для танкистов расписать". Не код же за Вас писать.
#11
Отправлено 16 September 2013 - 01:32 PM
#12
Отправлено 16 September 2013 - 02:10 PM
Да там не за что брать деньги. Замените в home.phpсам не разберусь, ктото поможет за деньги ?
$smarty->assign("special_offers",$result);
на
$smarty->assign("special_offers",array_reverse($result));
просто вызывает удивление ситуация "не умею, учиться не хочу, но все равно лезу..."
#13
Отправлено 16 September 2013 - 05:32 PM
#14
Отправлено 16 September 2013 - 05:35 PM
#15
Отправлено 16 September 2013 - 06:43 PM
Функция array_reverse, а не array_reverce опечатался по памяти.доеду до дома - проверю.
Мои извинения.
#16
Отправлено 17 September 2013 - 10:29 AM
#17
Отправлено 17 September 2013 - 11:30 AM
Одним из более-менее красивых вариантов является раскидать большое количество товаров по табам. Т.е. сделать табы 1-10, 11-20, 21-30 и так далее. Правда, грузятся при этом товары из всех табов, если AJAX не применять.
Ну и традиционный навигатор (как в категории и в поиске) никуда не делся.
#18
Отправлено 17 September 2013 - 11:36 AM
#19
Отправлено 17 September 2013 - 12:06 PM
Реализацию - не знаю. А "как сделать" - см. поиском "табы".а где можно глянуть реальзацию табы 1-10, 11-20, 21-30 и так далее ???
#20
Отправлено 17 September 2013 - 01:10 PM