Фильтр товаров/ресурсов
Всем доброго дня!
При создании каталога дошел до момента, где нужно делать фильтры. Почитал про дополнения (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
я так и не нашел, совместимо ли PDO Tools с mFilter или Tag Manager.tagManager идеально работает только с getProducts. Для miniShop есть свои решения по фильтрации
Лично я без особой необходимости ТВ стараюсь не использовать. Тем более, когда структура сайта сама по себе может быть фильтром.
Естественно, mFilter2 умеет работать с категориями и другими свойствам ресурсов. Вот здесь, например, трудится его старая версия — mamaboutique.ru/catalog/dlya-kormyashhix/, можно покликать.
ТВ параметров там, если я ничего не путаю, нет вообще. Всё через свойства товаров miniShop2 и собственный класс фильтрации.
Естественно, mFilter2 умеет работать с категориями и другими свойствам ресурсов. Вот здесь, например, трудится его старая версия — mamaboutique.ru/catalog/dlya-kormyashhix/, можно покликать.
ТВ параметров там, если я ничего не путаю, нет вообще. Всё через свойства товаров miniShop2 и собственный класс фильтрации.
Подскажите, как можно вывести (без mFilter2) все товары одного производителя? Логика подсказывает, что это минишоп должен это легко делать но примера нигде не найду
логика подсказывает что это есть в доках. И о чудо
— docs.modx.pro/components/minishop2/snippets/msproducts
— docs.modx.pro/components/minishop2/snippets/msproducts
Вывод товаров фирмы Sony:
[[!pdoPage?
&element=`msProducts`
&parents=`0`
&where=`{"Vendor.name":"Sony"}`
]]
[[!+page.nav]]
Где были мои глаза! Я эти доки уже раз 5 кажется прочитал, спасибо!!!
И о чудо)))… плюсанул…
Всем доброго!
Не подскажите?:
Есть такой вывод меню категорий
Категории
[[pdoMenu?
&parents=`[[++catalogid]]`
&level=`3`
&showHidden=`1`
&where=`{«template»:14}`
]]
Как сделать, что бы не выводились на странице (например Caterpillar) другие категории (зачёркнуты на скриншоте)? В общем нажал на Caterpillar — скрылись из меню Case IH и Andoria, нажал на Case IH — скрылись Caterpillar и Andoria.
На странице при нажатии категории (Caterpillar, например) выводится товары именно из категории Catepillar и вложенных подкатегорий, понимаю, что нужно фильтровать по контексту (товарам) но не нахожу как это сделать
Не подскажите?:
Есть такой вывод меню категорий
Категории
[[pdoMenu?
&parents=`[[++catalogid]]`
&level=`3`
&showHidden=`1`
&where=`{«template»:14}`
]]
Как сделать, что бы не выводились на странице (например Caterpillar) другие категории (зачёркнуты на скриншоте)? В общем нажал на Caterpillar — скрылись из меню Case IH и Andoria, нажал на Case IH — скрылись Caterpillar и Andoria.
На странице при нажатии категории (Caterpillar, например) выводится товары именно из категории Catepillar и вложенных подкатегорий, понимаю, что нужно фильтровать по контексту (товарам) но не нахожу как это сделать
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.