我想更改wooocommerce购物车中的小计价格。如果特定变体产品包含超过1个数量,我想更改购物车上的小计价格。例如,如果产品A的价格为12,则用户将数量更新为2,我想显示相同的小计12。如果数量是3,那么我想显示小计24。每次数量增加时,我想从小计中减去产品的正常价格。我当前的代码正在遵循它,它对我不起作用。
add_action( \'woocommerce_before_calculate_totals\', \'misha_recalculate_price\' );
function misha_recalculate_price( $cart_object ) {
if ( is_admin() && ! defined( \'DOING_AJAX\' ) )
return;
$product_ids = array(2697);
$quantity = 0;
foreach ( $cart_object->get_cart() as $hash => $value ) {
if( in_array( $value[\'variation_id\'], $product_ids ) ) {
$quantity += $value[\'quantity\'];
}
}
if( $quantity > 1 ) {
foreach ( $cart_object->get_cart() as $hash => $value ) {
if( in_array( $value[\'variation_id\'], $product_ids ) ) {
$newprice = echo $value[\'line_total\'] - $value[\'data\']->get_regular_price();
$cart_object->subtotal -= $value[\'data\']->get_regular_price();
$value[\'data\']->set_price( $newprice );
}
}
}
}