Jump to content

Prestashop 1.6 В Категории Вывести 4-5 Товаров В Ряд


Recommended Posts

В Prestashop 1.6 в категории, по умолчанию, выводится 3 товара в ряд (сетка), боковые колонки отключены за ненадобностью. Надо же, что-бы было 4 или 5 товаров в ряд. При этом нужна адекватная работа списка.

Менял разметку в product_list.tpl, вроде получилось, но оказалось, что при переходе "сетка / список" все сбивается.

Надеюсь на помощь. Спасибо.

{if isset($products) && $products}
	{*define number of products per line in other page for desktop*}
	{if $page_name !='index' && $page_name !='product'}
		{assign var='nbItemsPerLine' value=4}
		{assign var='nbItemsPerLineTablet' value=2}
		{assign var='nbItemsPerLineMobile' value=3}
	{else}
		{assign var='nbItemsPerLine' value=4}
		{assign var='nbItemsPerLineTablet' value=3}
		{assign var='nbItemsPerLineMobile' value=2}
	{/if}
	{*define numbers of product per line in other page for tablet*}
	{assign var='nbLi' value=$products|@count}
	{math equation="nbLi/nbItemsPerLine" nbLi=$nbLi nbItemsPerLine=$nbItemsPerLine assign=nbLines}
	{math equation="nbLi/nbItemsPerLineTablet" nbLi=$nbLi nbItemsPerLineTablet=$nbItemsPerLineTablet assign=nbLinesTablet}
	<!-- Products list -->
	<ul{if isset($id) && $id} id="{$id}"{/if} class="product_list grid row{if isset($class) && $class} {$class}{/if}">
	{foreach from=$products item=product name=products}
		{math equation="(total%perLine)" total=$smarty.foreach.products.total perLine=$nbItemsPerLine assign=totModulo}
		{math equation="(total%perLineT)" total=$smarty.foreach.products.total perLineT=$nbItemsPerLineTablet assign=totModuloTablet}
		{math equation="(total%perLineT)" total=$smarty.foreach.products.total perLineT=$nbItemsPerLineMobile assign=totModuloMobile}
		{if $totModulo == 0}{assign var='totModulo' value=$nbItemsPerLine}{/if}
		{if $totModuloTablet == 0}{assign var='totModuloTablet' value=$nbItemsPerLineTablet}{/if}
		{if $totModuloMobile == 0}{assign var='totModuloMobile' value=$nbItemsPerLineMobile}{/if}
		<li class="ajax_block_product{if $page_name == 'index'} col-xs-12 col-sm-4 col-md-3{else} col-xs-12 col-sm-6 col-md-3{/if}{if $page_name == 'product'} col-xs-12 col-sm-4 col-md-4 {else} col-xs-12 col-sm-6 col-md-3{/if}{if $smarty.foreach.products.iteration%$nbItemsPerLine == 0} last-in-line{elseif $smarty.foreach.products.iteration%$nbItemsPerLine == 1} first-in-line{/if}{if $smarty.foreach.products.iteration > ($smarty.foreach.products.total - $totModulo)} last-line{/if}{if $smarty.foreach.products.iteration%$nbItemsPerLineTablet == 0} last-item-of-tablet-line{elseif $smarty.foreach.products.iteration%$nbItemsPerLineTablet == 1} first-item-of-tablet-line{/if}{if $smarty.foreach.products.iteration%$nbItemsPerLineMobile == 0} last-item-of-mobile-line{elseif $smarty.foreach.products.iteration%$nbItemsPerLineMobile == 1} first-item-of-mobile-line{/if}{if $smarty.foreach.products.iteration > ($smarty.foreach.products.total - $totModuloMobile)} last-mobile-line{/if}">
			<div class="product-container" itemscope itemtype="https://schema.org/Product">
Link to comment
Share on other sites

Здравствуйте. Чтобы не сбивалась нужно редактировать файл product.js, который находится в вашей теме.

 

Это что это там нужно редактировать то? Учитывая что этот файл вообще не выводиться на страницах категорий...

 

lugobor

.col-md-4 = 3 товара в ряд

.col-md-3 = 4 товара в ряд

.col-md-2 = 5 товаров в ряд

 

Указывается это в классе li элемента.

Link to comment
Share on other sites

Более подробно.

Вам нужно отредактировать product-list.tpl в вашей теме.

Также чтобы корректно переключался вид с табличного на список и обратно, отредактируйте файл global.js вашей темы, функцию function display(view)

Edited by SupportPS (see edit history)
Link to comment
Share on other sites

Более подробно.

Вам нужно отредактировать product-list.tpl в вашей теме.

Также чтобы корректно переключался вид с табличного на список и обратно, отредактируйте файл global.js вашей темы, функцию function display(view)

 

Зачем нужно редактировать и трогать что либо в .js скриптах?

 

Есть два вида отображения товаров в категориях, в сетку и списком. Человек меняет сетку, отображения списка это вообще не как не должно затрагивать.

Link to comment
Share on other sites

Если бы ничего нигде не затрагивало, сюда никто бы и не писал. Я написал, как человеку решить его задачу. 

Вы в свою очередь создаете дискуссию, высказываете предположения.

Если не знаете ответа, тогда не заводите человека в заблуждение.

Link to comment
Share on other sites

Если бы ничего нигде не затрагивало, сюда никто бы и не писал. Я написал, как человеку решить его задачу. 

Вы в свою очередь создаете дискуссию, высказываете предположения.

Если не знаете ответа, тогда не заводите человека в заблуждение.

 

Из того что написали Вы, тут больше Вы сами разводите дискуссию и высказываете абсолютно нелепые предположения. После Вашего первого ответа в этой теме человеку с Вашими рекомендациями редактировать файл product.js, который вообще не выводиться на страницах категорий. Так что это я Вас прошу не вводить человека в заблуждение!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...