2013-02-08 70 views
0

我想写一个语句,看看布尔值字段(field_solo)中的值,并返回在Drupal 7中创建的两个模板文件之一。如果/然后语句的字段值在Drupal 7

我的字段“field_solo”正确输出0或1的值,并清除了缓存。

有人可以告诉我,如果我这样做是否正确?现在,当语句为TRUE时,我无法显示它。

function motg_preprocess_node(&$vars) { 

$node = $vars['node']; 
    if($node->field_solo[0]['value'] == 1) 
    { 
     $vars['theme_hook_suggestion'] = 'node__solo'; 
    } else 
    { 
     $vars['theme_hook_suggestion'] = 'node__video'; 
    } 
} 

回答

2

而不是

if($node->field_solo[0]['value'] == 1) 

让它

if($node->field_solo['und'][0]['value'] == 1) 
// OR 
if($node->field_solo[LANGUAGE_NONE][0]['value'] == 1) 
+0

这做到了!谢谢穆罕默德!我会尽我所能接受答案。 – Dan 2013-02-08 17:27:10

+0

只是想指出上述不是标准的Drupal方法。 – 2013-02-08 19:54:23

相关问题