2017-01-11 8 views
1

У меня есть сайт онлайн-школы с существующей регистрационной страницей, которую мне нужно использовать для получения конкретных данных от пользователя (см. Здесь: http://www.inventivewebdesign.com/nvtss/register/).Изменить регистрационную страницу WooCommerce

Проблема в том, что для покупки курса пользователь отправляется через WooCommerce. В рамках этого процесса пользователю предлагается зарегистрироваться на странице регистрации WooCommerce: http://www.inventivewebdesign.com/nvtss/checkout/ (возможно, вам придется добавить что-то в свою корзину: add this)

Проблема заключается в том, что сертификат, который мы печатаем , должен иметь данные, поступающие с первой страницы регистрации.

Есть ли способ заставить WooCommerce использовать регистрационную форму оттуда или просто перейти на эту страницу в первую очередь?

Я использую Gravity Forms Pro, чтобы добавить эти элементы в регистрацию пользователя на первой странице.

ответ

0

Да, это вполне возможно, используя пользовательскую функцию.

Когда клиент без регистрации прибудет на страницу проверки (сразу после обработки корзины), он будет перенаправлен на вашу конкретную страницу регистрации.

Вот этот код:

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

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

     // Define HERE your custom login form 
     $custom_login_url = site_url('/nvtss/register/'); 
     // if nvtss is the root of your wordpress web site, the url is going to be: 
     // $custom_login_url = site_url('/register/'); 

     // Redirecting to your custom login area 
     wp_redirect($custom_login_url); 

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

код идет в function.php файл вашего активного ребенка тема (активной темы или в любом файле плагина).

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