0

Drupal 7サイトがあり、パスワードで保護された1つのページ(ノード)を追加する必要があります。これは1回限りのことなので、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 に答える