ワードプレスでユーザーがログイン成功した直後に任意の処理を実行する


ワードプレスのユーザーログイン後のアクションは、login_redirectになります

function afterlogin_function($redirect_to) {
    //ユーザーログイン直後の処理を記載します
    return $redirect_to;
}
add_action('login_redirect', 'afterlogin_function', 10, 1);

ワードプレスでサブスクライバー(購読者)のみログイン後にログイン前にいたページにリダイレクトする

上記の処理を使いログインしたユーザーがサブスクライバー(購読者)だった場合にログイン前にいたページにログイン成功後リダイレクト(自動移動)してみます。
login_redirectアクションはリダイレクト先の変数を渡しますのでこちらを書き換えることで実現します。

function afterlogin_function($redirect_to) {
    global $user;
    if ( in_array( $user->roles[0], array( 'subscriber') ) && isset($_SERVER['HTTP_REFERER']) ) {
           $redirect_to= $_SERVER['HTTP_REFERER'];//ログインページにジャンプする前のページが入ります
    }
    return $redirect_to;
}
add_action('login_redirect', 'afterlogin_function', 10, 1);

WordPress ワードプレスのプラグインや、テーマのカスタマイズ、制作のご相談ご依頼はWPドクターまでお気軽にお送りください