Проверка вызова сниппета в чанке
Добрый день!
Вводное:
Есть сайт магазин, на нем есть раздел «Акции», туда выводятся все товары, где есть старая цена и обычная цена.
Задача:
Нужно вывести двух уровненный список, по типу:
Раздел 1
— Товар акции 1
— Товар акции 2
— Товар акции 3
Раздел 2
— Товар акции 1
— Товар акции 2
Реализация:
Вначале вызывается pdoResources:
Проблема:
Как в вызове pdoResources прописать условия, что если в чанке msProducts ничего — он не отображался.
Нужно чтобы показывались только те разделы, в которых есть товары с «старой ценой», сейчас же показываются все вместе. Как их разделить?
Template 4 — раздел, template 5 — товар.
MODX Revolution 2.3.2-pl
PHP Version 5.3.13
PdoTools 2.0.4-pl
Minishop2 2.1.8-pl3
Вводное:
Есть сайт магазин, на нем есть раздел «Акции», туда выводятся все товары, где есть старая цена и обычная цена.
Задача:
Нужно вывести двух уровненный список, по типу:
Раздел 1
— Товар акции 1
— Товар акции 2
— Товар акции 3
Раздел 2
— Товар акции 1
— Товар акции 2
Реализация:
Вначале вызывается pdoResources:
[[!pdoResources?
&parents=`6`
&depth=`1`
&limit=`50`
&where=`{«template»:4}`
&tpl=`row_tpl`
]]
В его шаблоне «row_tpl» вызывается msProducts:[[!msProducts?
&parents=`[[+id]]`
&depth=`1`
&where=`{«template»:5}`
&limit=`30`
&where=`{"Data.old_price:!=":0}`
&tpl=`tpl.msProducts.row`
]]
Проблема:
Как в вызове pdoResources прописать условия, что если в чанке msProducts ничего — он не отображался.
Нужно чтобы показывались только те разделы, в которых есть товары с «старой ценой», сейчас же показываются все вместе. Как их разделить?
Template 4 — раздел, template 5 — товар.
MODX Revolution 2.3.2-pl
PHP Version 5.3.13
PdoTools 2.0.4-pl
Minishop2 2.1.8-pl3
Комментарии: 2
Как-то так:
[[!msProducts:toPlaceholder=`products`?
&parents=`[[+id]]`
&depth=`1`
&where=`{«template»:5}`
&limit=`30`
&where=`{"Data.old_price:!=":0}`
&tpl=`tpl.msProducts.row`
]]
[[+products:eq=``:then=``:else=`<p>[[+pagetitle]]</p>
<div class="prodicts">
[[+products]]
</div>`]]
Отлично! Спасибо, помогло! :)
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.