Как использовать пользовательский режим просмотра блоков в режиме просмотра?
У нас есть пользовательский блок типа block_countries, и мы используем представление (my_view_custom) для отображения всех блоков, где тип = block_countries. В режиме просмотра block_countries мы настраиваем режим "Полного" просмотра, в котором мы отображаем определенную информацию.
Представление отображается в виде блока и помещается в область (т. е. область содержимого) темы. Мы хотим ввести режим просмотра block_countries "Полный" и настроить крючок предварительной обработки для выполнения некоторой обработки, однако мы не могу найти способ сделать это.
Нам нужна помощь в определении правильного шаблона ветки и препроцессора для вызова, чтобы получить желаемое ниже. Как мы можем это сделать?
Поля типа блока (block_countries):
- тело
- язык
- страна (ссылка на сущность: термин таксономии)
Режим полного просмотра (показаны поля):
- тело
- страна
Настройки просмотра:
- Формат = неформатированный список
- показать: пользовательский блок: Полный (где полный - режим просмотра)
- Критерии фильтрации: пользовательский блок: тип блока = block_countries
Мы пробовали следующее, но они не работают
Веточка
views-view-unformatted--my-view-custom--block-1.html.twig
Крючки
mytheme_preprocess_views_view(&$vars)
mytheme_preprocess_views_view__my_view_custom(&$vars)
Желаемый результат (для каждой строки, возвращаемой из представления):
<div data-country="{{ country }}"> {{ body }} </div>
1 answers
Не используйте пользовательские блоки, используйте узлы или пользовательский тип сущности. Пользовательские блоки предназначены для отображения в виде блока, а не представления внутри блока. У них нет собственного шаблона. См. https://www.drupal.org/node/2704331.
Да, это не здорово, но маловероятно, что это изменится в ближайшее время.