我目前在functions.php
中有此代码,以便在结帐页面上显示一条消息,说明客户已在其购物车中补购了商品:
add_action( 'woocommerce_review_order_before_payment', 'es_checkout_add_cart_notice' );
function es_checkout_add_cart_notice() {
$message = "You have a backorder product in your cart.";
if ( es_check_cart_has_backorder_product() )
wc_add_notice( $message, 'error' );
}
function es_check_cart_has_backorder_product() {
foreach( WC()->cart->get_cart() as $cart_item_key => $values ) {
$cart_product = wc_get_product( $values['data']->get_id() );
if( $cart_product->is_on_backorder() )
return true;
}
return false;
}
我要怎么做才能在CART页面上也显示相同的消息? (在结帐之前)。
谢谢。
答案 0 :(得分:0)
注释1:我更改了代码,使其在两个页面上都使用1个钩子,而不是使用2个不同的钩子
注释2:注意
的使用notice_type
self.c.append(torch.randint(0,2,(1,)))
wc_add_notice( __( $message, 'woocommerce' ), 'notice' );
对面。最终,这不是错误
注意3:(可选),您可以删除“ proceed_to_checkout”按钮(代码行已注释,此处似乎不适用)(请参阅注释2)
那你懂了
'error'