有条件地显示/隐藏Drupal Display套件字段

时间:2016-06-11 22:30:00

标签: php drupal

我已经以编程方式为节点类型的内容类型xyz创建了2个自定义Display Suite字段(abc1和abc2)。

我可以看到xyz的Manage Display上的字段,但我需要显示1个自定义字段,并根据一些条件隐藏另一个字段。

我尝试在template.php的preprocess_fields中执行此操作,但没有运气。哪里是基于条件检查渲染字段的最佳位置?

1 个答案:

答案 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;
                }
            }


     }