web-dev-qa-db-ja.com

現在のページがwp-adminかどうかを確認

" http://website.com/login/dashboard/ "にあるユーザー用の共通カスタムダッシュボードを作成しました。

管理者ではない場合と、ページ[IS http://www.website.com/login/wpの場合に限り、ユーザーをそのカスタムダッシュボードにリダイレクトしようとしています。 -admin /

私が持っているリダイレクト機能は次のとおりです。

add_action( 'admin_init', 'redirect_so_15396771' );

function redirect_so_15396771()
{   
    if ( defined( 'DOING_AJAX' ) && DOING_AJAX )  
        return;

    if ( current_page('is_admin()') & !current_user_can('delete_users') ) {
            wp_redirect( site_url( '/login/dashboard/' ) );
            exit();
    }
}
1
user1823055

current_user_can()でロールをテストすることができます。

if ( is_admin() && !current_user_can('administrator') ) {
    // redirect
}
2
fuxia