Страница термина - как проверить выводимый материал на флаг.

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

Аватар пользователя Тимофей Тимофей 25 ноября 2015 в 19:19

Добрый вечер!

На странице термина таксономии выводятся материалы нескольких типов. Как можно проверить выводимые материалы на наличие установленного флага (если он существует для данного типа материала вообще) и не выводить материал.

Т.е. как в шаблоне термина проверить, есть у материала проставленный флаг или нет? И в зависимости от этого выводить или нет.

Спасибо.

Комментарии

Аватар пользователя tlito tlito 25 ноября 2015 в 19:32

в шаблоне термина - то есть вас интересует taxonomy-term.tpl.php check node field ?
такой подход неправильный, так как в шаблоне термина не определены поля материалов и их вам придется подгружать и это будет тормозить сайт.
просто это решается так (из админки):
1. Taxonomy display - этот модуль позволяет выбрать для страницы термина словаря Представление, которое будет выводить материалы в нужном порядке, виде и фильтрации. установите
2. создайте представление views , в коем надо добавить контекстный фильтр - термин таксономии - по умолчанию - из url . также нужный вам критерий фильтрации по вашему полю
3. для нужного словаря таксономии отметьте в секции дополнительно Страница термина и настройте страницу термина - вместо ядра выводить ваше представление.
но если программно, то это может быть быстрее оптимальнее, но не файл шаблона, а надо использовать hook_taxonomy_term_view_alter все тут видны https://api.drupal.org/api/drupal/7/search/hook_taxonomy или даже хук ноде вью альтер порверять тизер и проверять args(0) =='taxonomy'

Аватар пользователя Тимофей Тимофей 25 ноября 2015 в 21:24

Спасибо, не знал про модуль, с ним все понятно, как сделать.

Просто раньше уже пробовал что-то подобное найти, но везде натыкался на "правьте шаблон термина".. Smile