将基于ACF字段的折扣应用于WooCommerce中的购物车总额

问题描述

我正在尝试以编程方式为商店中的订单创建折扣。我的用户有可变的折扣率,例如10%。我想在结帐前对订单应用折扣,但是商店中的某些商品不适用于折扣。

这些商品都设置了切换按钮,因此我可以检查哪些产品允许或不允许应用折扣。

目前,我正在遍历该订单以检查哪些商品适用,并使用'fixed_cart'优惠券添加折扣。

这有效,但是,在管理员中,优惠券适用于所有订单项,即使应跳过的项目也是如此。当需要退款时,无法处理要退还多少给客户。

检查购物车中的物品

$tradeDiscountTotal = 0;
foreach( WC()->cart->get_cart() as $cart_item ) {
    if(!get_field('trade_discount_exempt',$cart_item['product_id'])) {
        $tradeDiscountTotal += $cart_item['line_subtotal'];
    }
}

为该订单应用总折扣

$coupon->set_discount_type('fixed_cart');
$coupon->set_amount($tradeDiscountTotal);
return $coupon;

如何为每个订单创建量身定制的折扣,并确保打折的产品在管理区域中正确显示?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)