add_action( 'woocommerce_calculate_totals', 'woocommerce_calculate_total', 10, 1 );
function woocommerce_calculate_total( $cart ) {
if($cart->subtotal < 300){
$cart->subtotal += 85;
$cart->total += 85;
}
}
这段代码似乎可以正常工作,但仅适用于小计。 $cart->total
始终返回0,无论该值是什么,并且其低于小计。我也尝试过$cart->cart_contents_total
,它返回正确的值,但是我不能更改它。
WP版本是5.3.2,WC是3.8.1。
答案 0 :(得分:0)
您可以使用:
add_action( 'woocommerce_after_calculate_totals', 'woocommerce_after_calculate_totals', 30 );
function woocommerce_after_calculate_totals( $cart ) {
if($cart->subtotal < 300){
$cart->subtotal += 85;
$cart->total += 85;
}
}