2017-01-03 12 views
2

На странице «Моя учетная запись» Woocommerce отображается форма регистрации/входа, если пользователь не вошел в систему, но я пытаюсь использовать страницу входа/регистрации Wordpress по умолчанию (wp- login.php).Вводная зона WooCommerce перенаправляется на стандартную форму входа в Wordpress

Как я могу перенаправить «/ my-account» на «wp-login.php», если пользователь не вошел в систему?

спасибо.

ответ

2

Обычно пользовательская роль пользователя «Woocommerce» не имеет доступа к администратору Wordpress. Но вы можете использовать функцию постава в woocommerce_before_customer_login_form крюке со смешанным условием для перенаправления пользователя на классический WordPress области входа, таким образом:

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 файл вашей активной темы ребенка (активная тема или в любом файле плагина).

Этот код проверен и работает.