WooCommerce-防止将优惠券和礼品卡应用到购物车

时间:2019-12-21 23:34:46

标签: php wordpress woocommerce coupon

如果已经应用了礼品卡(YITH),如何防止将WooCommerce优惠券应用到购物车?反之亦然?

我发现了这个functions.php代码段,可防止将优惠券应用于礼品卡产品。它不适用于上述用例,但我想逻辑将是相似的。

有人可以帮忙吗?谢谢!

if( defined('YITH_YWGC_PREMIUM') ){
    if( !function_exists('yith_wcgc_deny_coupon_on_gift_card') ){
        add_action('woocommerce_applied_coupon','yith_wcgc_deny_coupon_on_gift_card');

        function yith_wcgc_deny_coupon_on_gift_card( $coupon_code ){
            global $woocommerce;
            $the_coupon = new WC_Coupon( $coupon_code );
            $excluded_items = $the_coupon->get_excluded_product_ids();
            $items = $woocommerce->cart->get_cart();
            foreach ( $items as $item ):
                if( has_term('gift-card','product_type',$item['product_id']) == true ):
                    $excluded_items[] = $item['product_id'];
                endif;
            endforeach;
            $the_coupon->set_excluded_product_ids($excluded_items);
            $the_coupon->save();
            wc_add_notice( 'Coupon cannot applied to gift card product', 'error' );

        }
    }

}

史蒂夫

0 个答案:

没有答案