Создадим обвязку новостей в которую будут попадать недавно просмотренные материалы пользователя.
Установим модуль Recently Read:
composer require drupal/recently_read ; drush en recently_read -y
Переходим в настройки модуля:
/admin/config/system/recently-read
Ставим галки на «Включить» и необходимые типы материалов:
Мне нужна только «Новость»
Во вкладке «Конфигурация» модуля меняем настройки:
Как именно будет удалена информация о недавно просмотренных материалов у пользователя?
- Time based — спустя указанное время;
- Count based — при просмотре нового материала — старый в конце сотрется;
- Никогда — не будет удалятся.
Добавим новый блок представления с обвязкой, а в него — Связь:
Content recently read
В «Наборы» укажем необходимый тип материала:
Далее, в критериях сортировки добавляем «Created» с категорией «Recently read» с порядком «По убыванию».
Добавим в контекстные фильтры ID без связи «Recently read» со следующими настройками:
- Когда значение фильтра не доступно → Передать значение по умолчанию → ID материала из URL;
- More → Исключить → Ставим галку.
Это нужно для того, чтобы в обвязке не выводился материал, на странице которого находится пользователь.
Мои настройки блока представления выглядят вот так:
Выведем блок с обвязкой.
Переходим в схему блоков:
/admin/structure/block
Размещаем новосозданный блок представления в любом удобном для вас регионе:
Если нужно — меняем настройки, указываем область видимости:
Мой блок будет выводиться на страницах «Новость»
Теперь посетим несколько новостей и взглянем на обвязку:
На скриншоте мало что понятно, но все работает — честное слово :)