Views Exposed Filters - как разбить по терминам таксономии?

Главные вкладки

Аватар пользователя Kiskenbassker Kiskenbassker 27 февраля 2017 в 14:18

Добрый день! Пытаюсь в магазине на Commerce реализовать фильтры через Views. В целом, делаю так.

У типа материала Товар есть поля Ссылка на термин таксономии - словари Цвет и Категории товаров. Цвет используется как характеристика товара, а Категория товаров для разбивки товаров. По Цвету я хочу создать фильтр. Использую Views - фильтр Has taxonomy term (exposed) для создания фильтра по цвету. Но проблема в том, что этот фильтр у меня есть в нескольких категориях, созданных с помощью терминов словаря Категории товаров. А когда я фильтрую в конкретной категории, мне выдает товары, например, красного цвета, из всех категорий.

Пробовал добавлять контекстный фильтр "Has taxonomy term ID", но он не помогает - в этом случае фильтр вообще ничего не выдает.

Кто-то может подсказать - что я делаю не так, и как это исправить?

Комментарии

Аватар пользователя Kiskenbassker Kiskenbassker 27 февраля 2017 в 14:46

Спасибо за рекомендацию Search API! Но я его пробовал еще до Exposed Filters, и проблема в конечном итоге вышла та же - его специальный view не могу разбить по категориям, использовать получается только когда все товары скопом на одной странице.

Аватар пользователя VasyOK VasyOK 27 февраля 2017 в 14:54

Просто вывести вьюхой товары по термину (без фильтра) можете?
На эту вьюху раскрытый фильтр поместить?

Аватар пользователя Kiskenbassker Kiskenbassker 27 февраля 2017 в 15:01

Kiskenbassker wrote:

Пробовал добавлять контекстный фильтр "Has taxonomy term ID", но он не помогает - в этом случае фильтр вообще ничего не выдает.

Или какие-то другие контекстные фильтры имеются в виду?

Аватар пользователя Kiskenbassker Kiskenbassker 27 февраля 2017 в 17:16

multpix wrote:

Да, спасибо, после этого видео стало понятнее, как работают контекстные фильтры. Но проблема так и не решена. Получается, суть проблемы - в том, что в URL, на который перекидывает после фильтрации, нет ID термина таксономии категории. Соответственно, он и не работает.

Но теперь непонятно, каким образом его туда добавить? Или нужно, чтобы результаты фильтрации выводились не на отдельной странице, а на той же (если такое вообще возможно с Exposed Filters)?

Аватар пользователя Kiskenbassker Kiskenbassker 2 марта 2017 в 14:59

dgastudio wrote:

Спасибо за рекомендацию!

Прочитал инструкцию здесь и попытался по ней настроить. Ранее у меня фильтры были сделаны при помощи поля Содержимое: имеет термин таксономии (раскрыт), но это поле не является selective, поэтому попробовал добавить и раскрыть поле "Цвет" в виде selective. Но не могу понять, какое сопутствующее ему поле надо выбрать? Попробовал добавить поле "Содержимое: Категория", но ничего не поменялось, и в настройках поля "Цвет" выпадающий список "Display field" пустой.

Аватар пользователя Kiskenbassker Kiskenbassker 2 марта 2017 в 15:17

Спасибо, я именно на Commerce Kickstart и делаю сайт. Там по умолчанию стоит фильтр Search API, долго пытался "подсмотреть", как вы говорите, но так ничего и не высмотрел. В стандартном шаблоне Commerce Kickstart фильтр есть только на странице "Все товары", мне же нужно, чтобы он был в категориях товаров, и фильтровал по той категории, в которой я в данный момент нахожусь. Собственно, поэтому и задаю вопрос.