Фильтр по нескольким таксономиям в URL
Мне нужно отобразить узлы в представлении, основанном на комбинации нескольких терминов таксономии, в нескольких словарях. Например, для продажи автомобилей один словарь позволяет посетителю выбрать один model
, а другой выбирает color
.
Мой пользовательский путь выглядит так:
/sales/cars/models/% // taxonomy view
/sales/cars/colors/% // taxonomy view
/sales/cars/model/%/color/% // taxonomy filter
URL-АДРЕС:
mydomain.tld/sales/cars/model/land-rover/color/red
Я предполагаю, что могу сделать это, выставив фильтры, но как?
1 answers
При создании страницы просмотров вы указываете путь к /sales/cars/model/%/color/%
Добавление контекстных фильтров:
Вам нужно создать 2 контекстных фильтра, оба из них: Content: Has taxonomy term id
поэтому повторите описанный ниже процесс дважды.
При настройке первого контекстного фильтра вам необходимо установить:
"ЕСЛИ ЗНАЧЕНИЕ ФИЛЬТРА НЕДОСТУПНО" -> Укажите значение по умолчанию -> Исходное значение из компонента URL ->Путь
Также отметьте "Использовать псевдоним пути", если URL-адрес является псевдонимом, а не системным путем.
Теперь вам нужно проверить его на том же экране наложения конфигурации в разделе
"КОГДА ДОСТУПНО ЗНАЧЕНИЕ ФИЛЬТРА ИЛИ ЗАДАНО ЗНАЧЕНИЕ ПО УМОЛЧАНИЮ"
Отметьте "Указать критерии проверки"
И выберите "Термин таксономии" для средства проверки. Проверьте соответствующий словарь для каждого контекстного фильтра и, наконец, установите для параметра "Тип значения фильтра" значение "Имя термина, преобразованное в идентификатор термина" и установите флажок "Преобразовать тире в URL-адресе в пробелы в значениях фильтра имени термина".
Установите "Действие, которое необходимо предпринять, если значение фильтра не подтверждается" в соответствии с вашими потребностями.