[РЕШЕНО] Фильтры по терминам таксономии

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

Аватар пользователя Olelishna Olelishna 22 января 2013 в 19:04

В общем, дело следующее:

У нас есть два словаря терминов - "Каталог" и "Бренд".
Ну и товары, соответственно. У каждого товара есть ссылка на термин каталога и на термин бренда.

Есть уже готовый вьюс, который фильтрует товары по терминам каталога - и прописан он, соответственно, для пути "taxonomy/term/%".

И тут оказалось (внезапно), что нужно сделать аналогичный вьюс для брендов (без учета разновидности товара) => добавлять еще один контекстный фильтр в первый вьюс будет некрасиво. А новый вьюс с фильтром по брендам работать не будет, т.к. при переходе на адреса типа "taxonomy/term/%" первый вьюс перетягивает все на себя.

Это не то, чтобы проблема - хотелось бы найти более изящное/простое решение, чем программировать вывод нужного вьюса ручками.

Комментарии

Аватар пользователя VasyOK VasyOK 22 января 2013 в 19:37

Обратите внимание на модуль taxonomy filter и забудьте обо всех проблемах кроме этой на ближайшие 2 недели.

Аватар пользователя Olelishna Olelishna 22 января 2013 в 21:04

В общем, решила я это следующим образом:

В настройках вьюса можно выбрать действие при отсутствии результатов (во вкладке "Дополнительно - Поведение при отсутствии результата"). И там можно выбрать новый вьюс (у меня пункт в выпадающем меню назывался "Глобальный: Область представления") и наследовать ему введенные аргументы (отметить галку "Наследовать контекстные фильтры").

Т.к. tid - он на то и id, что уникальный - поэтому если указать tid бренда, то основной вьюс ничего не вернет и выполнится второй, что нам и нужно.