Drupal 7有条件地检查一个字段

时间:2013-07-12 14:32:46

标签: drupal drupal-7 drupal-theming drupal-fields

我正在尝试在模板文件中编写条件语句,以检查“节点引用”字段的值是否与某个值不相等。这就是我到目前为止所做的:

<?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 个答案:

答案 0 :(得分:1)

问题可能在错误的引用中:

$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']);获取详细信息。

答案 1 :(得分:1)

如果它是一个主题文件或函数,请尝试打印传递主题文件或函数的变量

使用*替换$ var和变量name.always使用strcmp()来比较字符串值

echo "<pre>"
print($var);
die;