我正在寻找一些可以根据购物车中的物品总数收取额外费用的代码,例如:
- 如果购物车中的商品数量 > 6 ===> 额外费用 = 5
- 如果购物车中的商品数量 > 12 ==> 额外费用 = 10
我已经尝试过这段代码,但我无法让它适用于我的情况。
如何根据购物车中的商品总数计算额外费用?
根据(此答案) WooCommerce Cart Quantity Base Discount,您可以根据商品总数添加累进费用:
add_action( 'woocommerce_cart_calculate_fees','woocommerce_cart_extra_cost', 10, 1 );
function woocommerce_cart_extra_cost( $cart ) {
if ( is_admin() && ! defined( 'DOING_AJAX' ) ) return;
$cart_item_count = $cart->get_cart_contents_count();
// CONDITIONAL ITEMS QUANTITY FEE AMOUNT
if( $cart_item_count < 6 )
$fee = 0;
elseif( $cart_item_count >= 6 && $cart_item_count < 12 )
$fee = 5;
elseif( $cart_item_count >= 12 )
$fee = 10;
if( $fee > 0 )
$cart->add_fee( __( "Extra Cost", "woocommerce" ), $fee, true);
}
代码位于活动子主题(或主题)的 functions.php 文件中,也位于任何插件文件中。
测试和工作。