web-dev-qa-db-ja.com

ユーザー名に基づいて特定のページにユーザーをリダイレクトする方法は?

ユーザーロールを特定のページにリダイレクトするプラグインがありますが、ユーザー名を特定のページにリダイレクトできるプラグインはありますか?

serAが必要なのは、serAのページだけを表示するだけです。 serBは、serBなどのページを表示するonlyなどです。すべてのユーザーはサブスクライバーロールを持ちますが、アクセスできませんでした。互いのページ。

1
Mark Salvatore

ページにリダイレクトするには、これを試すことができます:

add_action( 'template_redirect', 'wpse_290317_redirect_user_to_page' );
function wpse_290317_redirect_user_to_page()
{
    $current_user = wp_get_current_user();
    if( 'username' == $current_user->user_login )
    {
        wp_redirect( 'http://redirect-page-url' );
        exit;
    }
}

しかし、ログイン時にリダイレクトしたいと思いますか?その場合、次のコードが役立ちます。

add_action( 'login_redirect', 'wpse_290317_redirect_user_to_page', 999, 3 );
function wpse_290317_redirect_user_to_page( $redirect_to, $request, $user )
{
    if( 'username' == $user->user_login )
    {
        $redirect_to = 'http://redirect-page-url';
    }

    return $redirect_to;
}
1