如果用户没有特定权限,如何限制显示 Drupal 块?

发布于 2024-10-20 18:03:13 字数 152 浏览 1 评论 0原文

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

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

I know that I can use the Show block for specific roles setting to manually configure whether a block is displayed to users.

I have a module that defines custom blocks. Rather than relying on the administrator to restrict the block visibility based on roles, can my module limit its blocks from being displayed unless a user has a particular permission?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

早茶月光 2024-10-27 18:03:13

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

Check access by user_access('Some access name');
For your module just return empty value, and block will not appear for that user.
For block admining, use php code for visibility.

如梦亦如幻 2024-10-27 18:03:13

Nikit 是对的,代码示例是:

<?php

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

?>

Nikit is right, a code example would be:

<?php

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

?>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文