2017-01-03 21 views
2

ユーザーがログインしていないのに私はデフォルトのWordpressログイン/登録ページ(wp- login.php)を使用してください。WooCommerceのログインエリアは、デフォルトのWordpressログインフォームにリダイレクトされます

ユーザーがログインしていない場合、「/ my-account」リダイレクトを「wp-login.php」にするにはどうすればよいですか?

ありがとうございます。

答えて

2

通常、Woocommerceの「顧客」ユーザーロールは、wordpressの管理者にアクセスできません。しかし、あなたは、古典的なワードプレスのログインエリアにユーザーをリダイレクトするために混合状態でwoocommerce_before_customer_login_formフックでhocked機能を使用することができ、この方法:

add_action('woocommerce_before_customer_login_form', 'redirect_customer_login_access'); 
function redirect_customer_login_access() { 

    // Here the conditions (woocommerce my account pages and unlogged user) 
    if(is_account_page() && !is_user_logged_in()){ 

     // Define here the redirection after login (optional) 
     $redirection_after = site_url('/shop/'); 

     // Redirecting to Wordpress login area 
     wp_redirect(wp_login_url($redirection_after)); 

     // always use exit after wp_redirect() function. 
     exit; 
    } 
} 

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

このコードはテスト済みであり、動作します。

関連する問題