Как показывать блок только на страницах(нодах), принадлежащих конкретной категории(термину таксономии)

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

Аватар пользователя andreyy05 andreyy05 24 августа 2010 в 23:13

Здравствуйте!
Подскажите пожалуйста как показывать блок, только для статей, определенной категории?

Рылся в настройках блоков,там можно показывать либо скрывать его на определенных страницах. А у меня есть определенная категория, и куча статей внутри нее, и мне нужно показывать блок только в статьях,из этой категории(термина).

Реально ли это? или нужно перечислять все адреса этих статей? но ведь это очень трудоемкая работа.

Выручите пожалуйста, кто знает!

Комментарии

Аватар пользователя ingumsky@drupal.org ingumsky@drupal.org 25 августа 2010 в 0:46

Вам правильно подсказывают. Нужно выбрать третий пункт и использовать его. Вот, например, код, благодаря которому блок будет выведен только на страницах, отмеченных терминами с id 1 или 7.

<?php
$desired_terms 
= array(1,7);
if ( 
arg(0) == 'node' and is_numeric(arg(1)) ) {
    
$node node_load(arg(1));
   foreach (
$node->taxonomy as $term) {
        if (
in_array($term->tid$desired_terms)) {
            return 
TRUE;
        }
    }
}
return 
FALSE;
?>

Этот код, по-моему, с Сетегнома. Рекомендую внимательно изучить его. Там много полезных сниппетов и советов.

Аватар пользователя igorek igorek 25 августа 2010 в 14:04

"Ветер" wrote:
там еще есть третий пункт, вот его и используй.

Должен быть включен php filter - модуль из ядра