【问题标题】:drupal 7 block restriction based on user term reference基于用户术语参考的drupal 7块限制
【发布时间】:2014-09-24 14:38:54
【问题描述】:

在我的 D7 网站上设置用户,并将各种术语引用作为个人资料字段。

我需要能够根据这些术语引用显示隐藏某些块,这可能吗?

我看不到将块与术语引用链接的方法。

【问题讨论】:

    标签: drupal drupal-taxonomy drupal-blocks


    【解决方案1】:

    实现此目的的一种方法是启用 php 过滤器并设置 在特定页面上显示块 -> 此 PHP 代码返回 TRUE 的页面(仅限专家) 在块设置中。

    然后您可以像这样访问登录用户的用户配置文件字段术语

     global $user;
     $user = user_load($user->uid); 
    
     $term1 = $user->field_term1[LANGUAGE_NONE][0]['value']; //the value should be the tid of the term
     $term2 = $user->field_term2[LANGUAGE_NONE][0]['value'];
    

    然后你可以相应地返回true来控制块的可见性。

    例如

           return $term1 == 15 //this is the tid of the term
    

    上面的代码将只向具有自定义字段 term 且 tid = 15 的用户显示块

    希望我没有让你感到困惑。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多