如何在drupal 7中为所有类型的用户设置子模块访问权限?

如何在drupal 7中为所有类型的用户设置子模块访问权限?,drupal,drupal-7,Drupal,Drupal 7,“我的用户访问权限”复选框不适用于管理员、经过身份验证的匿名用户 我已经创建了子模块并使用了hook_权限,还显示了admin上的复选框 但不在检查和不检查上工作。请给我解决方案? 谢谢您可能因为没有代码示例而被否决。这确实让回答你的问题变得很困难,但这很简单,所以我来试一试 如果您看到权限页面上的复选框,那么我知道您的hook_permission()很可能已正确声明 您没有提到如何检查权限,因此我将介绍两种方法: 1) 如果您使用的是hook_menu(),请查看access_argumen

“我的用户访问权限”复选框不适用于管理员、经过身份验证的匿名用户 我已经创建了子模块并使用了hook_权限,还显示了admin上的复选框 但不在检查和不检查上工作。请给我解决方案?
谢谢

您可能因为没有代码示例而被否决。这确实让回答你的问题变得很困难,但这很简单,所以我来试一试

如果您看到权限页面上的复选框,那么我知道您的hook_permission()很可能已正确声明

您没有提到如何检查权限,因此我将介绍两种方法:

1) 如果您使用的是hook_menu(),请查看
access_arguments
行。这就是为整个页面设置权限的方式

function mymodule_menu() {
  $items['abc/def'] = array(
    'page callback' => 'mymodule_abc_view',
    'access arguments' => array('administer my module')
  );
  return $items;
}
2) 如果您想检查代码段中的权限,作为一个条件,您可以这样使用它

if (user_access('administer my module')) {
  // show administrator stuff here
}

我使用了第一种方法,它在管理上显示复选框,但不起作用。它将如何限制用户访问以下由开发人员开发的模块??