Вы здесь

Views фильтрации по значению поля термина

0

Добрый день, запутался, прошу совета.

Условия

Есть нода товар (product), у неё два словаря: Теги (field_tags), Категории (field_cat).
В словаре Теги у термина, есть поле (field_category_rel), которое ссылается на термин из словаря Категории.

Есть представление, которое переопределяет стандартный вывод таксономии.

Задача

На странице отображения термина из словаря Теги, надо выводить ноды, которые имеют Категорию (field_cat) такую же как и (field_category_rel).

Возможное решение

То есть, если я правильно всё понимаю, то нужно создать фильтр по полю (field_cat) и там использовать значения, из (field_category_rel).

Вопрос.

Как это реализовать?

Версия Drupal: 
7.x
Категория: 
Taxonomy API
Связанные проекты: 
Views
Вопрос задан 01.12.2015 - 17:33

Ответы

2

Для начала, установить модуль https://www.drupal.org/sandbox/nickurbits/2070451
Далее создать связи, чтобы поле, значение которого будет использоваться в фильтре, стало доступно.
Сделать контекстный фильтр по полю, которое будет использоваться для сравнения.
В качестве значения выбрать вариант "Field value from current entity" (эту возможно сть как раз дает модуль) и выбрать поле со значением.

Ответ дан 01.12.2015 - 17:49

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

Комментарий оставлен 01.12.2015 - 19:21
1

Создать view по материалам.
Добавить контекстный фильтр по field_cat.
В дефолтном значении фильтра вернуть с помощью php текущую категорию:

return taxonomy_term_load(arg(2))->field_category_rel['und'][0]['tid'];
Ответ дан 01.12.2015 - 17:50
Аватар пользователя xandeadx
xandeadx
1475

Спасибо за ответ.
Помог определится с тем, что надо использовать контекстный фильтр.
Но я предпочитаю не использовать php filter и хранить как можно больше настроек в модулях.

Комментарий оставлен 01.12.2015 - 19:19