Зависимые поля User, Taxonomy, Node. Интересная задача. Drupal 8.

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

Аватар пользователя newpiero newpiero 8 декабря 2020 в 12:14

(РЕШЕНО).Столкнулся с интересной задачей.

Исходные данные:
- простая нода: в ней есть поле - ссылка на термин таксономии (Категории).
- профиль User: в нем есть поле - ссылка на термин таксономии (Школа и класс, выбирается только одно значение Класс)
- термин таксономии Класс: в нем есть поле - ссылка на термин таксономии Категория (на ту, что ссылается нода).

Задача:
При регистрации User выбирает школу и класс (выбирается только класс, школа является родительским термином).
Как вывести (желательно через Views) все ноды в профиле User именно для этого пользователя с категорией, которая выбрана в его Классе. То есть, если пользователь выбрал Класс 7Б (а у этого класса выбрана Категория Синий), то ему должны показываться все ноды из категории Синий.

Готов выслать на кофе и пончики тому, кто решит такую задачу.))

Комментарии

Аватар пользователя VasyOK VasyOK 9 декабря 2020 в 18:11

У пользователя поле ссылка на термин Класс. У термина Класс есть поле ссылки на термин словаря Цвета.

Вьюха с аргументом по ИД пользователя.

Связи:
1) Поле ссылка на Класс из профиля.
2) Поле ссылка на Цвет из словаря Классы

Поля:
1. ИД термина (от связи 2)
2. Поле от модуля views_field_view выводящее вьюху статей по термину Цвета. В этом поле задать аргумент ИД термина

Аватар пользователя newpiero newpiero 9 декабря 2020 в 19:16

Отлично, получилось! Спасибо большое. Свяжусь в личку.

P.S. А можно как-то разграничить права пользователей, т.е. чтобы был доступ к статьям по определенному цвету?

Аватар пользователя VasyOK VasyOK 10 декабря 2020 в 0:58

У меня нет сайтов на которых я могу бы посмотреть точный рецепт на эту тему, думаю подойдут (не факт, что все):
https://www.drupal.org/project/permissions_by_term
https://www.drupal.org/project/vapn

+ можно создать несколько дисплеев для вьюхи вывода статей, поставить на каждом дисплее фильтр по термину и роль в настройках доступа.