Remove cross sell block after add the discounted above 3 product quantity in cart

Remove cross-sell block after adding more than 3 discounted products to the cart.

add_action('woocommerce_before_cart', function () {
    if (class_exists('\WDR\App\Controllers\DiscountCalculator') && class_exists('\WDRPro\App\Rules\Cheapest')) {
        $cart = WC()->cart;
        $cart_items = $cart->get_cart();
        $applied_rules = \WDR\App\Controllers\DiscountCalculator::$applied_rules;
        if (!empty($applied_rules)) {
            $product_count = 0;
            foreach ($applied_rules as $applied_rule) {
                if ($applied_rule->rule->discount_type == 'wdr_buy_x_get_y_discount') {
                    foreach ($cart_items as $cart_item_key => $cart_item) {
                            if (isset($cart_item['data']->awdr_product_original_price)) {
                                $product_count += $cart_item['quantity'];
                                if ($product_count >= 3) {
                                    \WDRPro\App\Rules\Cheapest::$discountable_items['products'] = array();
                                }
                            }
                    }
                }
            }
        }
    }
}, 10);
add_action('woocommerce_before_cart', function () {
    ?>
    <script type="text/javascript">
        jQuery(document.body).on('updated_cart_totals', function () {
            location.reload();
        });
    </script>
    <?php
});

Last updated