【问题标题】:How to redirect logged out users to my account page instead of checkout page如何将注销的用户重定向到我的帐户页面而不是结帐页面
【发布时间】:2019-04-01 18:10:56
【问题描述】:
当他们尝试结帐时,我试图将已注销的用户重定向到我的帐户页面。
我已经试过了,但它现在可以工作了
function wpse_131562_redirect() {
if (
! is_user_logged_in()
&& (is_cart() || is_checkout())
) {
wp_redirect('woocommerce_myaccount_page_id'());
exit;
}
}
add_action('template_redirect', 'wpse_131562_redirect');
【问题讨论】:
标签:
php
wordpress
woocommerce
cart
checkout
【解决方案1】:
您的代码无法工作,因为没有重定向链接……请尝试以下操作(将未登录的用户从 Checkout 重定向到我的帐户):
add_action('template_redirect', 'unlogged_my_account_redirect');
function unlogged_my_account_redirect() {
if ( ! is_user_logged_in() && is_checkout() && ! is_wc_endpoint_url() ) {
wp_redirect( get_permalink( get_option('woocommerce_myaccount_page_id') ) );
exit();
}
}
代码进入您的活动子主题(或活动主题)的 function.php 文件中。经过测试并且可以工作。