Вывод товаров с разным дизайном
Здравствуйте, кто знает, как вывести товары не однотипно, а с разным дизайном.
Т.е. я вывожу обычно, через
указываю tpl и в нём шаблонный вывод карточки товаров. А в диз.макете у меня правый товар по площади в 2 раза больше левых, а каждый третий шире и т.д. Так вот как это вообще реализовывается?
Т.е. я вывожу обычно, через
[[!pdoPage?
&element=`msProducts`
и т.д.указываю tpl и в нём шаблонный вывод карточки товаров. А в диз.макете у меня правый товар по площади в 2 раза больше левых, а каждый третий шире и т.д. Так вот как это вообще реализовывается?
Комментарии: 5
НАсколько я знаю, msProducts не поддерживает tplOdd tplN_th и т.п. как pdoResources.
Вариант 1:
Если карточки простые — использовать pdoResources, но тут скорее всего есть подводные камни, например, будет ли цена со скидкой выводиться
Вариант 2:
В чанке одного товара использовать idx. [[+idx:mod:isequalto=`1`:then=`нечетный`:else=`четный`]]
[[+idx:mod=`3`:isequalto=`0`:then=`каждый третий`:else=`не третий`]]
Вариант 1:
Если карточки простые — использовать pdoResources, но тут скорее всего есть подводные камни, например, будет ли цена со скидкой выводиться
Вариант 2:
В чанке одного товара использовать idx. [[+idx:mod:isequalto=`1`:then=`нечетный`:else=`четный`]]
[[+idx:mod=`3`:isequalto=`0`:then=`каждый третий`:else=`не третий`]]
НАсколько я знаю, msProducts не поддерживает tplOdd tplN_th и т.п. как pdoResources.Поддерживает, по сути это тот же pdoResources, только с добавленными параметрами.
docs.modx.pro/komponentyi/pdotools/snippetyi/pdopageт.е.
По умолчанию pdoPage принимает все параметры pdoTools
[[pdoPage?
&element=`msProducts`
&parents=`50`
&tpl=`tpl.msProducts.row.Дилеры`
&tplOdd=`tpl.msProducts.row.БезЦены`
&limit=`250`
&sortby=`{"menuindex":"asc"}
` ]]
tplOdd + tpl — работает.Т.е. смотрим документацию
Нас интересуют эти шаблоны:
&tplFirst Имя чанка для первого ресурса в результатах.Вроде как на все Ваши потребности хватает встроенных условий.
&tplLast Имя чанка для последнего ресурса в результатах.
&tplOdd Имя чанка для каждого чётного ресурса (хоть «odd» значит «нечётный», работает для чётных ресурсов).
&tpl_N Имя чанка для N-го ресурса, например, &tpl_4=`tpl4th` установит шаблон для 4-го ресурса.
&tpl_nN Имя чанка для каждого N-го ресурса, например, &tpl_n4=`tplEvery4th` будет применено к каждому 4-му ресурсу.
Так вот как это вообще реализовывается?Для примера:
{'!pdoPage' | snippet : [
'class' => 'msProduct',
'element' => 'msProducts',
'parents' => 151,
'tpl' => '@INLINE {$id} - {$pagetitle}',
'tpl_n2' => '@INLINE каждый 2й',
'tpl_n3' => '@INLINE каждый 3й',
'tpl_n4' => '@INLINE каждый 4й'
]}
Почитать тут — Параметры шаблонов
всем спасибо, направление понял!
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.