使用Woocommerce,是否可以强制用户在结帐后直接注销(重要说明:我需要勾选“允许客户在结帐时创建帐户”)。
我问,因为默认情况下,一个用户购买了一个在线课程,尽管没有经过管理员用户的验证,他们仍然可以直接访问它。
答案 0 :(得分:0)
您可以在结帐后使用注销功能
add_action('woocommerce_payment_complete', 'custom_process_order', 10, 1);
function custom_process_order() {
wp_logout();
}
答案 1 :(得分:0)
以下将在结账后将客户注销,将客户重定向到商店页面:
// 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文件中。经过测试和工作。
注意:当客户注销后,结帐后将无法再访问订单摘要(已收到订单),因此需要重定向。