Welcart ログイン後のページURLを指定する方法

Welcart
Welcart
B!

Welcartの会員情報でログインすると「https://example.com/usces-member」に遷移しますが、今回は会員に必ず見て欲しいページなどページのURLを指定する方法を書いて行きます。

ログイン後のURLを指定

Welcartで用意されているアクションフック “usces_action_after_login” に引っ掛けるための独自関数を用意してログイン後のページURLを指定します。

以下の関数を functions.php などに追加して変更内容を適用します。

/**
 * ログイン後のURLを指定する
 */
function ag_usces_action_after_login()
{
    $url = home_url()."/mypage";
    wp_redirect( $url );
    exit;
}
add_action( 'usces_action_after_login', 'ag_usces_action_after_login' );

カートページ以外のみ独自マイページへリダイレクト

カートページの購入フローの中でログインした場合など、意図したリダイレクトをしない場合は、以下のようにリファラをチェックしてカートページ以外のみ独自のマイページへリダイレクトするようにします。

/**
 * ログイン後のURLを指定する(カートページ以外のみ独自マイページへリダイレクト)
 */
function ag_usces_action_after_login()
{
    $referer   = $_SERVER['HTTP_REFERER'];
    $url_array = parse_url($referer);
    //
    if (preg_match("/usces-cart/", $url_array['path'])) {
        //$url = $referer;
    } else {
        $url = home_url()."/mypage";
        wp_redirect( $url );
        exit;
    }
}
add_action( 'usces_action_after_login', 'ag_usces_action_after_login' );

動作環境情報

エックスサーバー(x10)
PHP 7.2.27
MySQL 5.7
WordPress 5.3.2
Welcart e-Commerce 1.9.28
B!
← 一覧へ戻る