我应该在 functions.php
中添加哪些代码来删除“购物车为空时无法结账”。 Woocommerce 中的通知。
我在includes/wc-template-functions.php中找到了负责显示此消息的代码。
// When on the checkout with an empty cart, redirect to cart page. if ( is_page( wc_get_page_id( 'checkout' ) ) && wc_get_page_id( 'checkout' ) !== wc_get_page_id( 'cart' ) && WC()->cart->is_empty() && empty( $wp->query_vars['order-pay'] ) && ! isset( $wp->query_vars['order-received'] ) && ! is_customize_preview() && apply_filters( 'woocommerce_checkout_redirect_empty_cart', true ) ) { wc_add_notice( __( 'Checkout is not available whilst your cart is empty.', 'woocommerce' ), 'notice' ); wp_safe_redirect( wc_get_cart_url() ); exit; }
覆盖核心文件不是一个选项,有什么建议吗?
P粉5614384072023-11-18 09:39:55
您可以使用woocommerce_checkout_redirect_empty_cart
过滤器挂钩。由于仅当此条件为真时才会显示该消息
add_filter( 'woocommerce_checkout_redirect_empty_cart', '__return_false' );
另一种选择是使用 woocommerce_add_notice
过滤器挂钩,如果消息匹配,则返回 false
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 );