php - 重定向与 WooCommerce 购物车计数条件冲突

标签 php wordpress redirect woocommerce cart

我正在使用 Woocommerce 如果我想在购物车为空时访问结账,我已经设置了一些代码来重定向到商店页面。这是代码

add_action('template_redirect', 'go_away');
function go_away() {
    if (is_user_logged_in() && is_checkout() && WC()->cart->cart_contents_count == 0){
        wp_redirect(get_permalink(get_option('woocommerce_shop_page_id')));
        exit;
    }
}

这很好用。但是,当我付款时,我无法访问“谢谢”页面。购物车被认为是空的,我的代码将我直接重定向到商店页面!

是否有其他方法可以在结帐后访问“谢谢”页面,或者是否有其他方法可以在购物车为空时限制结帐访问?

最佳答案

试试这个

add_action('template_redirect', 'go_away');
function go_away() {
    if (is_user_logged_in() && is_checkout() && WC()->cart->cart_contents_count == 0){
        if ( $_GET["key"] == null ) {
            wp_redirect(get_permalink(get_option('woocommerce_shop_page_id')));
            exit;
        }
    }
}

关于php - 重定向与 WooCommerce 购物车计数条件冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39068377/

相关文章:

javascript - 未捕获的语法错误 : Unexpected token ILLEGAL

mysql - Contact Form 7 到 Wordpress 用户数据库

html - 用于打开 URL 的 Google Apps 脚本

apache - 如何编辑 htaccess 以将所有流量重定向到安全的 www 域

php - 每次使用不同的搜索和替换执行多个 preg_replace

php - Yii 多对多过滤

javascript - 将表单数据和操作发送到 wordpress admin-ajax.php

apache 无法重定向到 SSL 中的自定义错误页面

php - 使用 javascript 和 json 字符串在网页中进行 http 调用

php - 将 WHERE IN 子句的参数与 PDO 绑定(bind)