Как на странице материала вывести в блоке ноды из этой же категории
Распространённая задача — в блоке на странице материала, вывести ноды из категории, к которой принадлежит просматриваемый материал (под категорией понимается термин таксономии).
Способ 1
1. Создаём представление.
2. Добавляем дисплей Блок.
3. Добавляем фильтры (по типу материала, статусу и т.п.), меняем настройки по вкусу.
4. Добавляем контекстный фильтр по полю, в котором прописана категория материала (в примере это field_category
).
5. В настройках контекстного фильтра отмечаем опцию Provide default value, в качестве типа выбираем PHP Code и в поле PHP contextual filter code пишем код, который вернёт значение поля у открытого материала, например:
return node_load(arg(1))->field_category['und'][0]['tid'];
6. Идём на страницу управления блоками, открываем настройки нового блока и устанавливаем видимость только для материалов определённого типа.
Способ 2
Всё тоже самое, только в настройках контекстного фильтра, в Provide default value, вместо PHP Code выбираем Taxonomy term ID from URL, отмечаем появившуюся опцию Load default filter from node page, that's good for related taxonomy blocks и выбираем нужный словарь в поле Vocabularies: