Фильтр товаров/ресурсов
Всем доброго дня!
При создании каталога дошел до момента, где нужно делать фильтры. Почитал про дополнения (mFilter, Tag Manager) и пока что сложно это увязать с тем, что есть у меня. В связи с этим хочу посоветоваться, как правильно двигаться дальше.
Вот так выглядят фильтры для категории «Элементы питания» и брэнда «Camelion» в частности:

В верстке каждый элемент фильтра выводится таким образом (к примеру, элемент «Все»:
Осложняется все тем, что в админке у меня следующая структура:

Т.е. в категории «Элементы питания» у меня идут подкатегории с брэндами (Atc, Camelion и т.д.). В категории с брэндом идут подкатегории, по которым я хочу осуществлять фильтрацию (Алкалиновые, Солевые, Аккумуляторы и т.д.).
Как видно из скриншота, я сделал подкатегории, а не стал делать для товара TV-поле.
Поэтому хотелось бы уточнить следующие вопросы:
1) Возможно ли с помощью какого-нибудь дополнения сделать фильтр как я хочу с этой структурой, которая у меня есть сейчас или мне нужно убрать эти подкатегории и создать TV-поле, куда уже будет добавляться нужная метка (Алкалиновые или Солевые и т.д.) Из документации к mFilter и Tag Manager я понял, что сортировка идет по TV-полям, но хотелось бы услышить ваше мнение — может есть Extra, которое мне подойдет. Сам я похожее не смог найти.
Т.е. получится у меня структура «Элементы питания > Брэнд > Товар». А у самого товара будет TV-поле, в котором я уже буду присваивать ему нужный мне параметр (допустим «Алкалиновые»).
2) Если структуру все-таки нужно менять и делать дополнительное TV-поле, то хотелось бы еще спросить про совместимость.
На данный момент у меня меню, товары и пагинация — все выводится через PDO Tools (Resources, Page, Menu). Погуглив, я так и не нашел, совместимо ли PDO Tools с mFilter или Tag Manager. Посоветуйте extras, которые друг с другом могут работать в комплексе — допустим, PDO Tools + Minishop2 + (mSearch + mFilter). В идеале конечно хотелось бы оставить PDO Tools и связать с нужными мне компонентами, т.к. PDO Tools меня устраивает — все отлично работает. Видел, что у Minishop есть сниппет msProducts. В документации к PDO Page есть параметр &element, где я мог бы указать msProducts, но еще не тестировал на совместимость.
Вроде бы все описал. Буду рад любой помощи. Заранее спасибо!
При создании каталога дошел до момента, где нужно делать фильтры. Почитал про дополнения (mFilter, Tag Manager) и пока что сложно это увязать с тем, что есть у меня. В связи с этим хочу посоветоваться, как правильно двигаться дальше.
Вот так выглядят фильтры для категории «Элементы питания» и брэнда «Camelion» в частности:

В верстке каждый элемент фильтра выводится таким образом (к примеру, элемент «Все»:
<div class="filter-subcategory-container">
<input type="checkbox" id="all" name="all">
<label for="all">Все</label>
</div>При нажатии на фильтр «Все» под ним должны выводиться все товары (здесь из категории «Camelion»). При нажатии на другие фильтры, выводятся соответствующие товары. Еще в идеале хотелось бы, чтобы можно было фильтры комбинировать. Допустим, нажимаю на «Алкалиновые» и «Солевые» и у меня выводятся соответственно все алкалиновые и солевые батарейки. Еще, как видно из скриншота, есть фильтр по цене.Осложняется все тем, что в админке у меня следующая структура:

Т.е. в категории «Элементы питания» у меня идут подкатегории с брэндами (Atc, Camelion и т.д.). В категории с брэндом идут подкатегории, по которым я хочу осуществлять фильтрацию (Алкалиновые, Солевые, Аккумуляторы и т.д.).
Как видно из скриншота, я сделал подкатегории, а не стал делать для товара TV-поле.
Поэтому хотелось бы уточнить следующие вопросы:
1) Возможно ли с помощью какого-нибудь дополнения сделать фильтр как я хочу с этой структурой, которая у меня есть сейчас или мне нужно убрать эти подкатегории и создать TV-поле, куда уже будет добавляться нужная метка (Алкалиновые или Солевые и т.д.) Из документации к mFilter и Tag Manager я понял, что сортировка идет по TV-полям, но хотелось бы услышить ваше мнение — может есть Extra, которое мне подойдет. Сам я похожее не смог найти.
Т.е. получится у меня структура «Элементы питания > Брэнд > Товар». А у самого товара будет TV-поле, в котором я уже буду присваивать ему нужный мне параметр (допустим «Алкалиновые»).
2) Если структуру все-таки нужно менять и делать дополнительное TV-поле, то хотелось бы еще спросить про совместимость.
На данный момент у меня меню, товары и пагинация — все выводится через PDO Tools (Resources, Page, Menu). Погуглив, я так и не нашел, совместимо ли PDO Tools с mFilter или Tag Manager. Посоветуйте extras, которые друг с другом могут работать в комплексе — допустим, PDO Tools + Minishop2 + (mSearch + mFilter). В идеале конечно хотелось бы оставить PDO Tools и связать с нужными мне компонентами, т.к. PDO Tools меня устраивает — все отлично работает. Видел, что у Minishop есть сниппет msProducts. В документации к PDO Page есть параметр &element, где я мог бы указать msProducts, но еще не тестировал на совместимость.
Вроде бы все описал. Буду рад любой помощи. Заранее спасибо!
Комментарии: 7
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Естественно, mFilter2 умеет работать с категориями и другими свойствам ресурсов. Вот здесь, например, трудится его старая версия — mamaboutique.ru/catalog/dlya-kormyashhix/, можно покликать.
ТВ параметров там, если я ничего не путаю, нет вообще. Всё через свойства товаров miniShop2 и собственный класс фильтрации.
— docs.modx.pro/components/minishop2/snippets/msproducts
СергейНе подскажите?:
Есть такой вывод меню категорий
Категории
[[pdoMenu?
&parents=`[[++catalogid]]`
&level=`3`
&showHidden=`1`
&where=`{«template»:14}`
]]
Как сделать, что бы не выводились на странице (например Caterpillar) другие категории (зачёркнуты на скриншоте)? В общем нажал на Caterpillar — скрылись из меню Case IH и Andoria, нажал на Case IH — скрылись Caterpillar и Andoria.
На странице при нажатии категории (Caterpillar, например) выводится товары именно из категории Catepillar и вложенных подкатегорий, понимаю, что нужно фильтровать по контексту (товарам) но не нахожу как это сделать