web-dev-qa-db-ja.com

マルチサイトWordPressインストールでユーザーを制限する

私はWordPressのマルチサイトインストールの一部として維持している一連のサイトを持っています。これらのサイトのうち1つだけを表示するように制限されたユーザーアカウントを作成できるようにしたいです。これは可能ですか?

これが完了したら、この許可ステータスをプログラムで判断する方法はありますか?現在のユーザーがアクセスできるすべてのサイトのリストを取得できるようにしたい、または少なくともそのユーザーに特定のサイトへのアクセス許可があるかどうかをテストしたいのですが。

3
Nathan Friend

現在のユーザーがwp-admin/network/site-users.phpのブログに割り当てられているかどうかを確認するには、is_user_member_of_blog()を使用します。それからtemplate_redirectにフックしてテストを実行します。

add_action( 'template_redirect', function() {

    if ( ! is_user_member_of_blog() )   
        die( 'Please ask the network administrator to get access to this blog.' );
});
1
fuxia