我已经以编程方式为节点类型的内容类型xyz创建了2个自定义Display Suite字段(abc1和abc2)。
我可以看到xyz的Manage Display上的字段,但我需要显示1个自定义字段,并根据一些条件隐藏另一个字段。
我尝试在template.php的preprocess_fields中执行此操作,但没有运气。哪里是基于条件检查渲染字段的最佳位置?
答案 0 :(得分:0)
尝试使用引用的hook_entity_view_alter();
用户$build
来更改每个字段的#access
键值。即,这是使用#access
键值(布尔值)
function yourmodule_entity_view_alter(&$build, $type){
global $node;
foreach($build as $key => $item){
if(strstr($key, 'field')){
$build[$key]['#access'] = true;
}
}
}