WordPressのログアウトで確認画面を飛ばす方法

ログアウト画面をスキップ Wordpress
ログアウト画面をスキップ

wordpressからログアウトする際、「・・・からログアウトしようとします。ログアウトしますか?」というメッセージ画面をスキップする方法です

check_admin_refererでリダイレクト処理追加

function.phoに以下のコードを追加します。

function logout_without_confirm($action, $result)
{
    if ($action == "log-out" && !isset($_GET['_wpnonce'])) {
        $redirect_to = isset($_REQUEST['redirect_to']) ? $_REQUEST['redirect_to'] : '/';
        $location = str_replace('&', '&', wp_logout_url($redirect_to));
        header("Location: $location");
        die;
    }
}
add_action('check_admin_referer', 'logout_without_confirm', 10, 2);

ログアウト後のページを指定したい場合は下記のようなリンクになります。

/wp-login.php?action=logout&redirect_to=/testpage

補足

check_admin_refererは互換性のため維持されている古い関数ようで・・。適切な方法が見つかれば追記しようと思います。

コメント

タイトルとURLをコピーしました