Создал в материале поле - Логическое значение Выключатель да/нет. Значение у поля 1 или 0. Создал вьюху. Пытаюсь вывести это поле в tpl.php вьюхи с уловием:
<?php if ($fields['field_my_field']->content == 1): print t('123'); endif;?>
. Не работает. Ничего не выводит
Добавил
<?php print $fields['field_my_field']->content;?>
выводит 0 или 1, в зависимости есть галочка или нет в материале.
Почему не работает условие?
Комментарии
А вот так работает?
<?php if($fields['field_my_field']->content == '1') print t('123');?>
нет
А так?
<?php if($fields['field_my_field']->content == TRUE) print t('123');?>
или
<?php if($fields['field_my_field']->content) print t('123');?>
в обоих варианта ВСЕГДА выводится 123, не зависимо 0 или 1
Попробуй еще так
<?php if($fields['field_my_field']->content === '1') print t('123');?>
или так
<?php if($fields['field_my_field']->content === 1) print t('123');?>
ничего не выводит
Странно, тогда исходя из опытов должен работать самый первый вариант, если там действительно не строкой а числом выводятся 0 или 1, хотя числовой вариант ты проверял, попробуй мой вариант записи
<?php if ($fields['field_my_field']->content == 1) print t('123');?>
Это на так важно но проверь на всякий случай.
Можно еще вот так попробовать:
<?php
if ((int)$fields['field_my_field']->content) print t('123');
?>
не работают оба варианта...
<?php if ($fields['field_my_field']->content == 1) print t('123');?>
ничего не выводит.<?php if ($fields['field_my_field']->content == 0) print t('123');?>
выводит 123 везде.