Drupal 7 условно проверить поле

Я пытаюсь написать условный оператор в файле шаблона, чтобы проверить, не является ли значение поля "ссылка на узел" определенным значением. Это то, что у меня есть до сих пор:

<!--?php
$value = ( $content['field_collection_or_bespoke']['#items']['0']['value'] );

if ( $value != 'bespoke' ) : ?-->

 // Do something if not bespoke 

<!--?php endif ?-->

В настоящий момент он всегда оценивает истину. Я не уверен, что $value не получает правильное поле или что значение, которое я тестирую, неверно. Если это так, как я могу найти значения поля field_collection_or_bespoke?

Большое спасибо

2 ответа

Проблема, вероятно, в неправильной ссылке:

$value = ( $content['field_collection_or_bespoke']['#items']['0']['value'] );

В массиве отсутствует языковой ключ.

Это должно быть что-то вроде:

$value = ( $content['field_collection_or_bespoke']['und']['0']['value'] );

Пожалуйста, сделайте Print_r($content['field_collection_or_bespoke']); чтобы получить детали.


Если его файл или функция темы попытаются распечатать переменную, переданную файл или функцию темы

используя * заменить $ var своей переменной name.always использовать strcmp() для сравнения строковых значений

echo "<pre class="prettyprint linenums">"
print($var);
die;

licensed under cc by-sa 3.0 with attribution.