Выйти из системы после Woocommerce Checkout - PullRequest
1 голос
/ 23 апреля 2019

с помощью Woocommerce, можно ли принудительно выйти из системы сразу после оформления заказа (ВАЖНО: мне нужно установить флажок «Разрешить клиентам создавать учетные записи во время оформления заказа»).

Я спрашиваю, потому что по умолчанию пользователь покупает онлайн-курс, и он получает прямой доступ к нему, несмотря на то, что он не подтвержден администратором.

Ответы [ 2 ]

0 голосов
/ 23 апреля 2019

После выхода из системы клиент выйдет из системы и перенаправит клиента на страницу магазина:

// Logourt after checkout and redirect to shop
add_action( 'template_redirect', 'order_received_logout_redirect' );
function order_received_logout_redirect() {
    // Only on "Order received" page
    if( is_wc_endpoint_url('order-received') ) {
        wp_logout(); // Logout

        // Shop redirection url
        $redirect_url = get_permalink( get_option('woocommerce_shop_page_id') );

        wp_redirect($redirect_url); // Redirect to shop

        exit(); // Always exit
    }
}

Код помещается в файл function.php вашей активной дочерней темы (или активной темы). Протестировано и работает.

Примечание: Когда клиент вышел из системы, он больше не может получить доступ к сводке заказа (Заказ получен) после оформления заказа, поэтому требуется перенаправление.

0 голосов
/ 23 апреля 2019

Вы можете использовать функцию выхода из системы после оформления заказа

add_action('woocommerce_payment_complete', 'custom_process_order', 10, 1);

function custom_process_order() {   
wp_logout();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...