【问题标题】:remove_action wc_empty_cart_message not working in WooCommerceremove_action wc_empty_cart_message 在 WooCommerce 中不起作用
【发布时间】:2021-11-16 05:54:11
【问题描述】:

我想彻底删除wc_empty_cart_message。我的网站没有购物车。当该项目从结帐中删除时,用户将被重定向到主页。但是在浏览到商店页面时,会出现“您的购物车不可用,而您的结帐为空”的消息,并且完全没有必要。

我已经看到了许多关于如何将消息更改为其他内容的问题/答案(我尝试了其中一些似乎也不起作用)。

我尝试了这似乎是正确的做法,但由于某种原因,它并没有在我的网站上产生任何明显的变化。

remove_action( 'woocommerce_cart_is_empty', 'wc_empty_cart_message', 10 );

有什么方法可以检查哪个钩子从前端创建消息?或者以任何方式我可以看到是什么推翻了这个命令的执行?

【问题讨论】:

    标签: php wordpress woocommerce hook-woocommerce


    【解决方案1】:

    要删除“您的购物车当前为空”消息,请使用:

    function action_woocommerce_cart_is_empty() {
        // Remove
        remove_action( 'woocommerce_cart_is_empty', 'wc_empty_cart_message', 10 );  
    }
    add_action( 'woocommerce_cart_is_empty', 'action_woocommerce_cart_is_empty', 9, 0 );
    

    remove_action 中的 add_action 具有较低的优先级编号 (9)


    要删除“购物车为空时无法结帐”消息,请使用:

    function filter_woocommerce_add_notice ( $message ) {
        // Equal to (Must be exactly the same).
        // If the message is displayed in another language, adjust where necessary!
        if ( $message == 'Checkout is not available whilst your cart is empty.' ) {
            return false;
        }   
        
        return $message;
    }
    add_filter( 'woocommerce_add_notice', 'filter_woocommerce_add_notice', 10, 1 );
    

    【讨论】:

      【解决方案2】:

      根据@7uc1f3r 的回答中的信息以及我最近查看的其他一些教程,我发现这也可以解决问题:

      add_filter( 'woocommerce_add_notice', '__return_null' );
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-10-19
        • 2018-12-16
        • 2017-07-02
        • 1970-01-01
        • 2015-05-05
        • 2013-01-31
        • 1970-01-01
        相关资源
        最近更新 更多