我正在自动为特定产品添加优惠券,效果很好,但这使我无法删除优惠券,也无法添加其他优惠券。我收到 AJAX 回复,说优惠券已添加或删除,但实际上并没有做任何事情。
如果我注释掉这段代码,优惠券的添加/删除工作正常。
我正在尝试通过 AJAX 删除优惠券,有什么需要注意的可能会阻止它正常运行吗?看起来,一旦添加了优惠券,它就会再次将其删除。
我认为这是由于以下代码
add_action( 'woocommerce_before_cart', 'auto_apply_coupons' );
function auto_apply_coupons() {
$coupon_code = 'test25';
$autoCoupon = array( 1, 2 );
foreach ( WC()->cart->get_cart() as $cart_item ) {
...
if ($cart_item['type'] === 'Subscription') {
if ( in_array( $cart_item['product_id'], $autoCoupon ) ) {
WC()->cart->apply_coupon( $coupon_code );
}
}
}
}
有没有一种不同的方式可以让我在自动应用优惠券的同时仍然能够添加/删除新的/现有的优惠券?
答案 0 :(得分:0)
我最终通过切换到不同的操作解决了这个问题,我现在使用以下内容触发我的自动优惠券逻辑:
add_action( 'woocommerce_add_to_cart', 'auto_apply_coupons' );