我需要在实际提交订单之前(无论是在添加到购物车之后还是在提交订单之前)更改WooCommerce产品数量。我设法做到了:
function change_cart_item_quantities ( $cart ) {
$new_qty = 9; // Piece of code for new Qty calculation, dummy number for now
// Checking cart items
foreach( $cart->get_cart() as $cart_item_key => $cart_item ) {
$product_id = $cart_item['data']->get_id();
$cart->set_quantity( $cart_item_key, $new_qty, false );
}
}
set_quantity()
方法应该完全满足我的需要,第三个参数是一个布尔值,它定义在更改数量后是否应刷新购物车总计。效果很好,每个产品添加到购物车后的数量均为'9',但购物车的总数确实会更新。
有办法解决吗?我想念什么吗?