【问题标题】:How to restrict a Drupal block from being displayed if a user does not have a particular permission?如果用户没有特定权限,如何限制显示 Drupal 块?
【发布时间】:2011-03-09 07:56:34
【问题描述】:

我知道我可以使用为特定角色显示块设置来手动配置是否向用户显示块。

我有一个定义自定义块的模块。与其依赖管理员根据角色限制块的可见性,我的模块是否可以限制其块的显示,除非用户具有特定的权限

【问题讨论】:

    标签: drupal drupal-7 drupal-blocks drupal-permissions drupal-roles


    【解决方案1】:

    通过 user_access('Some access name');检查访问权限;
    对于您的模块,只需返回空值,该用户不会出现块。
    对于块管理,使用 php 代码进行可见性。

    【讨论】:

      【解决方案2】:

      Nikit 是对的,代码示例如下:

      <?php
      
      $block = array();
      if (user_access('my custom permission')) {
        $block['content'] = t('Here is a message');
      }
      return $block;
      
      ?>
      

      【讨论】:

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