Получить количество элементов в плейсхолдере msProducts
Здравствуйте.
В верстке есть некий слайдер товаров. Элементы получаю через сниппет msProducts и вставляю в плейсхолдер 'favProducts' (т.к. эту штуку нужно выводить в нескольких местах) — все хорошо.
Но в этом слайдере есть ещё и буллеты (т.е. кружочки, число которых равно количеству товаров в слайдере) — заново запускать сниппет msProducts, что бы просто посчитать количество элементов, не хочется.
Может быть есть какой-нибудь способ получить количество элементов в плейсхолдере?
В верстке есть некий слайдер товаров. Элементы получаю через сниппет msProducts и вставляю в плейсхолдер 'favProducts' (т.к. эту штуку нужно выводить в нескольких местах) — все хорошо.
Но в этом слайдере есть ещё и буллеты (т.е. кружочки, число которых равно количеству товаров в слайдере) — заново запускать сниппет msProducts, что бы просто посчитать количество элементов, не хочется.
Может быть есть какой-нибудь способ получить количество элементов в плейсхолдере?
{'!msProducts' | snippet : [
'parents' => 3,
'limit' => 6,
'sortby' => 'menuindex',
'sortdir' => 'ASC',
'where' => ['Data.popular' => 1],
'includeThumbs' => 'medium',
'tpl' => 'msProductIndex',
'toPlaceholder' => 'favProducts'
]}
{var $favproducts = $_modx->getPlaceholder('favProducts')}
{*if}{$favproducts | lenght} <!-- так он считает количество символов, а мне нужно количество элементов -->{/if*} Комментарии: 12
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
а уже ниже в вызове принимайте getPlaceholde('myovechka')
Должно сработать.
Ну а в JS проблем не должно быть определить кол-во. там 1й строкой можно.
если нет, то увы.
а minishop 3.0.7 — видимо не там качал (с modx.pro)… сейчас установил с modstore — страшно, но там ломаться пока особо нечему, сайт новый
Вывести данные можно добавив в параметры 'return' => 'data',
При таком подходе возвращаться должен голый массив, если не ошибаюсь.
те нужно:
(проверьте только И потом можно: — кол-во.
Через или foreach переменную mysnip прогнать
или чанк распарсить через parsChunk с уже готовой разметкой. Это уже на свой вкус.