Вы здесь

Как выводить блок на странице термина в зависимости от значения поля термина?

0

Задача: Необходимо вывести блок при определенном значении поля (False).
Что пробовал: есть решение для node и значения true, если его применять для термина таксономии, то не показывает блок вообще, если поменять значение на true - показывает всегда вне зависимости от значения.
Вот само решение:
Вписываем в область настроек видимости "Если введённый PHP-код возвращает значение TRUE" следующий код

<?php
$node  = menu_get_object();
return (isset($node->field_boolean[LANGUAGE_NONE][0]['value'])) ? $node->field_boolean[LANGUAGE_NONE][0]['value'] : FALSE;
?>

Где field_boolean - имя нашего логического поля.
Как сделать тоже для термина таксономии?
Пробовал:

<?php
$term  = menu_get_object('taxonomy_term');
return (isset($term->field_nalichie[LANGUAGE_NONE][0]['value'])) ? $term->field_nalichie[LANGUAGE_NONE][0]['value'] : FALSE;
Версия Drupal: 
7.x
Категория: 
Block APIField API
Вопрос задан 21.02.2017 - 15:11

на странице термина таксономии. С помощью Block Visibility by Vocabulary выбрал нужный словарь и в настройках отображения блока добавил php код. Если есть возможность сделать тоже самое без модуля, было бы замечательно. Но я не разобрался как добавить хотя бы одно условие с логической переменной, если получится, можно добавить 2-е условие с выбором словаря или словарей. (taxonomy_vocabulary_load поможет наверное)

Комментарий оставлен 21.02.2017 - 17:19

Ответы

1
menu_get_object('taxonomy_term', 2)
Ответ дан 21.02.2017 - 17:19
Аватар пользователя xandeadx
xandeadx
1527

Спасибо, заработало. Как сделать теперь наоборот, чтобы блок вывелся с значением поля false. Сейчас работает, если галочка стоит, хочется наоборот.

Комментарий оставлен 21.02.2017 - 17:25