2017-06-02 4 views
1

私は卸売会員専用のwoocommerceサイトを作成しています。私はこれまでのところ、私は、スタック交換 -バイパスWooCommerceカスタムログインのマイアカウントログイン

add_action('template_redirect', 'wc_redirect_non_logged_to_login_access'); 
function wc_redirect_non_logged_to_login_access() { 

    if (!is_user_logged_in() && (is_woocommerce() || is_shop() || 
is_cart() || is_checkout())) { 
     wp_redirect(get_permalink( 
get_option('woocommerce_myaccount_page_id'))); 
     exit(); 
    } 
} 

にここで見つける以外のコードのこのビットを使用して、ユーザーのログインのために戻って自分のアカウントのページへのリダイレクトを作成することにより、woocommerceの全てをロックダウンするために管理しているそれは完璧に動作し、私が作成したカスタムログインページを使用したいと思います。 www.example.com/customlogin - どこに/私はこれを上記のコードに挿入しますか?私はしようとしましたが、構文エラーがあり、私のサイトから1日半をロックしました。

次へ私はカスタムログインページをwoocommerceマイアカウントページに結びつけて、同じページのコードにwoocommerceが隠すデフォルトのログインをバイパスする必要があります。したがって、基本的に「ログインしていないユーザー」が「マイアカウント」リンクをクリックすると、代わりにカスタムログインページが表示されます。こうすることで、ログインページと私のアカウントのページを別々に編集できるようになります。同じページにいるときと私の編集効果の両方を同時に実行するときには本当にできません。

ありがとうございました。あなたは以下のコードは、あなたの要件の両方を解決します試してみてください

答えて

0

add_action('template_redirect', 'wc_redirect_non_logged_to_login_access'); 
function wc_redirect_non_logged_to_login_access() { 

    if (! is_user_logged_in() && (is_woocommerce() || is_shop() || 
is_cart() || is_checkout() || is_account_page())) { 
     wp_redirect(home_url('/customlogin')); 
     exit(); 
    } 
} 

コードは、任意のプラグインファイルでも、あなたのアクティブな子テーマ(またはテーマ)のfunction.phpファイルになりますか。

が私のアカウントページに条件を拡張するために、私は条件付きWCタグ使用:カスタムフォームへのリダイレクトについてis_account_page()
を私が使用します。このコードはテストされwp_redirect(home_url('/customlogin'));

+0

完璧に動作します、100万人のおかげです!それを把握しようとしていた、そして/または数週間これを行うためのWeb上のコードを見つけようとしていました!あなたは素晴らしいです! – Vash

関連する問題