Автор Тема: ограничение товаров в модуле (нужно условие)  (Прочитано 280 раз)

27 Апрель 2014, 14:11:30
  • Новичок
  • *
  • Сообщений: 1
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Имеется несколько вопросов по программной части:

1. Как ограничить количество товаров в модуле "BlockNewProduct". Через админку поставил 10 товаров. Однако 10 товаров выводится и на главной и в модуле слева, как сделать условие, чтобы выводится а не больше 1 товара в модуле слева.

2. Хочу сделать new-label (Хиты) для модуля "Популярные товары" по аналогии со скидками и новыми товарами.
Как сделать условие для популярных товаров.

{if isset($product.new) && $product.new == 1}
<span class="new-box">
<span class="new-label">{l s='Хит'}</span>
</span>
{/if}

PS: Prestashop 1.6
28 Апрель 2014, 11:27:12
Ответ #1
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 33084
  • Репутация: +26762/-0
    • Просмотр профиля
1. В админке устанавливается количестов общее для всех блоков.
Чтобы в левой/правой колонке был Х товаров, нужно изменить шаблон blocknewproducts.tpl
{foreach from=$new_products item='product' name='newProducts'}
{if $smarty.foreach.newProducts.index < Х} //Вот тут подствить "Х", сколько нужно показать товаров 1,2,3...
<li{if $smarty.foreach.newProducts.first} class="first"{/if}><a href="{$product.link|escape:'html'}" title="{$product.legend|escape:html:'UTF-8'}"><img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'medium_default')|escape:'html'}" height="{$mediumSize.height}" width="{$mediumSize.width}" alt="{$product.legend|escape:html:'UTF-8'}" /></a></li>
{/if}
{/foreach}

2. В классе модуля нужно определить эту переменную для smarty.