wordpress 将未登录的用户从“ checkout ”重定向到“我的帐户”

shstlldc  于 2023-06-21  发布在  WordPress
关注(0)|答案(1)|浏览(171)

我试图重定向注销用户到“我的帐户”页面时,他们试图结帐。
我已经尝试过了,但它并没有像预期的那样工作:

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');
e4yzc0pl

e4yzc0pl1#

您的代码无法工作,因为没有重定向链接...请尝试以下操作 (将未登录的用户从“结账”重定向到“我的帐户”)

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文件中。测试和作品。

相关问题