woocommerce_apply_individual_use_coupon

FILTER woocommerce\src\StoreApi\Utilities\CartController.php (ligne 1081) github
Filter coupons to remove when applying an individual use coupon.
traduction française
Filtrer les coupons à supprimer lors de l'application d'un coupon à usage individuel.

Paramètres

Entrée :
array(
Sortie :
@param array $coupons Array of coupons to remove from the cart.
@param \WC_Coupon $coupon Coupon object applied to the cart.
@param array $applied_coupons Array of applied coupons already applied to the cart.
@return array

Utilisation

Gérer les coupons à usage unique

Contrôler le comportement quand un coupon exclusif est appliqué

pricing
// Gestion coupons usage unique
add_filter('woocommerce_apply_individual_use_coupon', 'gestion_coupon_exclusif', 10, 3);

function gestion_coupon_exclusif($apply, $coupon, $applied_coupons) {
    // Garder le coupon le plus avantageux
    $current_discount = 0;
    
    foreach ($applied_coupons as $code) {
        $existing = new WC_Coupon($code);
        $existing_amount = WC()->cart->get_coupon_discount_amount($code);
        if ($existing_amount > $current_discount) {
            $current_discount = $existing_amount;
        }
    }
    
    $new_discount = WC()->cart->get_coupon_discount_amount($coupon->get_code(), false);
    
    // Appliquer si plus avantageux
    return $new_discount > $current_discount;
}

Actualités

Chargement des actualités...