Похожие ноды на основе двух словарей в Drupal 8 на Views

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

Аватар пользователя y-vo y-vo 30 июня 2019 в 10:52

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

Сделал следующее:

Создал контекстный фильтр по тегам, по умолчанию включил term ID из URL
(Группировать результаты -> Передавать значение по умолчанию -> ID термина таксономии из URL, Загрузить фильтр по умолчанию со страницы материала ->Фильтровать по элементам, которые содержат какой-либо из терминов, ЕЩЕ -> разрешить множественные значения.)

Создал контекстный фильтр, исключающий из списка текущий материал
Включил агрегацию
Создал сортировку по ID(count)

Вроде бы работает, но вот если пытаюсь добавить еще и контекстный фильтр по основному словарю, то представление ничего не выводит, хотя совпадения есть и в первом и во втором. Реализуемо ли подобное во Views? Пробовал уже по разному, везде смотрел. И в связях и в фильтре. Поиском ни на ру, ни на анг языке не нашел подобного...

Лучший ответ

Аватар пользователя y-vo y-vo 1 июля 2019 в 18:35

Все, спасибо, разобрался, сделал как написано у xandeadx, за исключением того пункта что указал gun_dose, все заработало как надо)

Комментарии

Аватар пользователя gun_dose gun_dose 30 июня 2019 в 11:29
1

"загрузить фильтр со страницы термина" надо выключить. Оставить только "со страницы материала". Если не ставить галочку "ограничить термины словарём", то достаточно будет одного фильтра. Только вместо контекстных фильтров по конкретным полям, нужно выбрать "имеет идентификатор термина таксономии".

Аватар пользователя y-vo y-vo 30 июня 2019 в 12:00

Спасибо, похоже работает, только почему то в обратном порядке вроде бы сортирует, хотя выбрано по убыванию... А нужно ли ставить галочку "Разрешить множественные значения?" Если ее ставлю, то отображаются в том числе и те что не совпадают по основному словарю, если не ставлю, то всего пара значений выводится.

Аватар пользователя y-vo y-vo 1 июля 2019 в 18:04

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

Аватар пользователя y-vo y-vo 1 июля 2019 в 18:35

Все, спасибо, разобрался, сделал как написано у xandeadx, за исключением того пункта что указал gun_dose, все заработало как надо)