0

我有 Drupal 7 站点,我需要添加一个受密码保护的页面(节点)。因为这是一次性的,我不想在 Drupal 中使用那些相当复杂的访问控制模块。

任何想法,如何限制对节点的访问?我可以以某种方式使用用户角色吗?这将是完美的,但似乎不能开箱即用。

4

1 回答 1

1
function theme_preprocess_node( &$variables )
{
    $allowed_roles = array("administrator", "media");

    global $user;
    if($variables['nid'] == NODEID)
    {
        foreach($user->roles as $role)
        {
            if(in_array($role, $allowed_roles))
                return;
        }
        drupal_goto("user"); //  redirect to login
    }
}

我使用上面的解决方案来处理这种情况。这对我来说是最好的解决方案,虽然它对用户来说不是很冗长:)

于 2012-12-04T13:33:47.440 回答