我通过WooCommerce使用WooCommerce预订,并且WooCommerce强制销售插件。
我想使用WooCommerce强制销售在预订中为每人增加一个强制销售的物品。
Woocommerce的家伙已经提供了一个片段,可以在functions.php中添加它,以修改强制销售的行为。通过此代码段,您可以设置要添加的固定数量(1)的副产品:
// only add one force sell item per product no matter how many of the original product are added
function my_wc_force_sell_add_to_cart_product( $product ){
$product['quantity'] = 1;
return $product;
}
add_filter( 'wc_force_sell_add_to_cart_product', 'my_wc_force_sell_add_to_cart_product' );
// when a synced force sell product is updated always set it to 1
function my_wc_force_sell_update_quantity( $quantity, $product ){
return 1;
}
add_filter( 'wc_force_sell_update_quantity', 'my_wc_force_sell_update_quantity' );
我想做的事:用检索预订中指定人数的功能代替固定数量(1)。
任何帮助都会很棒。
答案 0 :(得分:0)
我想我找到了!
function my_wc_force_sell_add_to_cart_product( $product ){
foreach(WC()->cart->get_cart() as $cart_item) {
// The item persons count
$person = array_sum( $cart_item['booking']['_persons'] );
}
$product['quantity'] = $person;
return $product;
}
add_filter( 'wc_force_sell_add_to_cart_product', 'my_wc_force_sell_add_to_cart_product' );
// when a synced force sell product is updated always set it to 1
function my_wc_force_sell_update_quantity( $quantity, $product ){
return 1;
}
add_filter( 'wc_force_sell_update_quantity', 'my_wc_force_sell_update_quantity' );