---
title: "Codes promos WooCommerce, comment contraindre un nombre minimum d’articles dans le panier"
id: "292480"
type: "post"
slug: "woocommerce-coupon-minimum-articles-panier"
published_at: "2022-08-10T20:24:53+00:00"
modified_at: "2024-03-14T19:03:14+00:00"
url: "https://www.mistersize.com/blog/woocommerce-coupon-minimum-articles-panier/"
markdown_url: "https://www.mistersize.com/blog/woocommerce-coupon-minimum-articles-panier.md"
excerpt: "Dans la série des articles liés à WordPress et son plugin de e-commerce, je vous propose ici un bout de code permettant d’ajouter une option utile à un de vos coupons WooCommerce."
taxonomy_category:
  - "Blog"
taxonomy_post_tag:
  - "Woocommerce"
---

[j'aime](#partage)
[Commenter](#comments-list)
Taggué dans : [Woocommerce](https://www.mistersize.com/tag/woocommerce/)

Dans la série des articles liés à WordPress et son plugin de e-commerce, je vous propose ici un bout de code permettant d’ajouter une option utile à un de vos coupons WooCommerce.

Suite à mon tutoriel sur les [code promos Woocommerce](https://www.mistersize.com/blog/woocommerce-comment-offir-un-produit-code-promo/)
, j’ai eu en commentaire de l’article une demande pour ajouter la fonctionnalité suivante : la possibilité de **limiter l’utilisation du code promo seulement si le panier contient 2 articles ou plus**.

## Besoin d'aide ?

Pas le temps de vous occuper de la **modification de votre site WooCommerce** ? Besoin de faire des modifications en profondeur ? Confiez-moi cette mission !

[Modifier mon site WooCommerce](https://www.mistersize.com/contact/?from=woocommerce-coupon-minimum-articles-panier)

## Limiter l’utilisation d’un code promo selon le nombre d’articles dans WooCommerce

Alors comment **forcer un nombre minimum d’article dans le panier pour l’utilisation d’un code promo** ? C’est ce que je vous propose de voir ci dessous.

Besoin d’un spécialiste **WooCommerce** pour votre projet ? [Contactez-moi](https://www.mistersize.com/contact/)

Premièrement, commencez par créer un code promo. Dans mon exemple il est nommé *« promo10 »* et permet d’avoir 10% de réduction sur tout le panier.

Ensuite, grâce à votre logiciel FTP, rendez-vous dans le fichier **functions.php** de votre thème et collez le code ci-dessous :

```
add_action( 'woocommerce_before_calculate_totals','mrsize_coupon_produits_minimum', 10, 1 );
function mrsize_coupon_produits_minimum($cart){

global $woocommerce;

$produits_minimum = 2; // nombre de produits minimum dans le panier
$coupon_code = 'remise10'; // Le nom de votre coupon (en minuscule)
$message_erreur = "Oups ! Le coupon $coupon_code n'est valable qu'à partir de $produits_minimum produits dans le panier";

$item_count = $woocommerce->cart->get_cart_contents_count();

$applied = in_array( $coupon_code, $woocommerce->cart->get_applied_coupons() ) ? true : false;

if ( $item_count <= $produits_minimum - 1 && $applied ) {

$woocommerce->cart->remove_coupon( $coupon_code );
wc_clear_notices();
wc_add_notice( $message_erreur, 'error');

}

}
```

Vous avez donc 3 **variables** à configurer :

**$produits_minimum**, pour le nombre de produits minimum pour ce coupon  
**$coupon_code**, le nom du coupon en question  
et accessoirement le **$message_erreur** que vous pouvez personnaliser.

## Appliquer automatiquement un code promo selon le nombre d’articles dans le panier WooCommerce

Une autre variante peut vous permettre d’ajouter automatiquement in code promo à WooCommerce selon un nombre minimum de produits dans le panier, voici le code :

```
add_action( 'woocommerce_before_calculate_totals', 'mrsize_coupon_auto_produits_minimum', 10, 1 );
function mrsize_coupon_auto_produits_minimum($cart){

    global $woocommerce;

    $produits_minimum = 2; // nombre de produits minimum dans le panier
    $coupon_code = 'remise10'; // Le nom de votre coupon (en minuscule)
    $message_erreur = "Oups ! Le coupon $coupon_code n'est valable qu'à partir de $produits_minimum produits dans le panier";

    $item_count = $woocommerce->cart->get_cart_contents_count();

    if ( $item_count >= $produits_minimum ) {
        // Si le nombre d'articles dans le panier est supérieur ou égal au minimum requis
        if ( !in_array( $coupon_code, $woocommerce->cart->get_applied_coupons() ) ) {
            // Si le coupon n'est pas déjà appliqué, l'appliquer
            $woocommerce->cart->add_discount( sanitize_text_field( $coupon_code ) );
            wc_clear_notices();
        }
    } else {
        // Si le nombre d'articles dans le panier est inférieur au minimum requis
        if ( in_array( $coupon_code, $woocommerce->cart->get_applied_coupons() ) ) {
            // Si le coupon est appliqué, le retirer et afficher un message d'erreur
            $woocommerce->cart->remove_coupon( sanitize_text_field( $coupon_code ) );
            wc_add_notice( $message_erreur, 'error' );
        }
    }
}
```

Cette article vous a-t’il été utile ? Si vous avez des questions, n’hésitez pas à les poser dans les [commentaires](#comments-list)
 ou par [e-mail](https://www.mistersize.com/contact/)
.

## Découvrez nos plugins WooCommerce

**Améliorez votre boutique en ligne avec nos plugins personnalisés** :   
Automatisez vos promotions, multiple point de collecte, bon d’achat exclusif à chaque nouveau inscrit, …

[Découvrez TD Plugins](https://td-plugins.com)
