WooFrance Dépannage et support WordPress WooCommerce › Forums › Forum de Support WooCommerce › [Résolu] Woocommerce : Achat par multiples de 3 avec panachage de produits
- Ce sujet contient 15 réponses, 4 participants et a été mis à jour pour la dernière fois par
noelle1, le il y a 3 années et 8 mois.
-
AuteurMessages
-
8 juin 2021 à 12 h 19 min #237856
Bonjour à vous, je vous invite à lire cet article qui je pense correspond à vos attentes :
Ajouter des règles de quantité minimale et maximale à WooCommerce avec Advanced Product Quantity
Bien à vous 🙂
====================
8 juin 2021 à 12 h 32 min #237875Bonjour ! Merci beacoup pour ce retour
J’ai fouillé un peu hier et je ne crois pas que cette solution convienne car elle bloque par tranche de 3 chaque produit, hors je souhaitaos pouvoir panacher plusieurs produits …
J’ai trouvé au final un bout de code qui permet de valider la panier par multiple de 3 uniquement pour une certaine classe de produit ( les bouteilles), ce qui me permet de vendre à l’unité également des coffrets cadeau par exemple. Et ça fonctionne à merveille !
// Limit cart items with a certain shipping class to be purchased in multiple only
add_action( « woocommerce_check_cart_items », « woocommerce_check_cart_quantities_for_class » );
function woocommerce_check_cart_quantities_for_class() {
$multiples = 3;
$class = « bottle »;
$total_products = 0;
foreach ( WC()->cart->get_cart() as $cart_item_key => $values ) {
$product = get_product( $values[« product_id »] );
if ( $product->get_shipping_class() == $class ) {
$total_products += $values[« quantity »];
}
}
if ( ( $total_products % $multiples ) > 0 )
wc_add_notice( sprintf( __(« Pour faciliter l’expedition, vous ne pouvez acheter des bouteilles que par multiple de %s », « woocommerce »), $multiples ), « error » );
}
merci encore d’avoir pris le temps de me répondre !
belle après-midi ! Noëlle
1 user thanked author for this post.
30 juin 2021 à 10 h 07 min #244174Bonjour, je crois que vous allez me sauver la vie avec cette function. Par contre ou est ce que je dois l’inserer dans mon code. Car je l’ai intégré à mon fichier function.php et lorsque je veux tester sur mon site si la function marche. Ma page « Panier » ne s’affiche plus.
Merci beaucoup pour votre réponse.
====================GuillaumeTIN
30 juin 2021 à 10 h 15 min #24417730 juin 2021 à 10 h 18 min #24417830 juin 2021 à 10 h 22 min #24417930 juin 2021 à 10 h 32 min #24418130 juin 2021 à 10 h 34 min #24418226 août 2021 à 14 h 28 min #26449426 août 2021 à 14 h 32 min #26449726 août 2021 à 15 h 21 min #264531Merci Noelle1 pour ta réponse rapide 😉
Mais…
Ne fonctionne pas, ni dans mon thème enfant > plante le site après enregistrement fichier functions.php
ni dans thème parent > me dit que mon code n’est pas valide, impossible d’enregistrer le fichier
Peut être à cause des dernières versions de woocommerce, wp et divi.
Quelqu’un connaitrait un plugin qui fait ce travail ? > site de vins, panachage possible, pour faire des cartons de 6 bouteilles mini
====================
26 août 2021 à 15 h 26 min #264533le code est ok il fonctionne parfaitement chez moi, je ne vois pas pkoi les nouvelles versions le ferait planter ?
tu as bien ouvert et fermé les baises php dans le fichier ? il faut bien aussi supprimer tous les espaces superflus, j’ai eu un sacré beug à cause de ça au passage et j’ai galéré pour l’identifier ..
26 août 2021 à 15 h 26 min #264534concernant les plugin j’ai fouillé un moment mais je n’ai rien trouvé qui faisait ce job précis .. mais si tu trouves qq chose ça m’intéresse !
Voici le site de demo ou le code est appliqué : https://ecommerce2.nremy.dnconsultants.pro/
26 août 2021 à 16 h 07 min #264546J’ai persévéré et j’y suis arrivé
En fait, je suis retourné sur le lien que tu mettais :
et j’ai comparé le code.
C’était un soucis des » guillemets anglais à la place des » guillemets français
+ ouverture/fermeture php effectivement aussi
En tout cas je trouve ce snippet génial ! c’est tout à fait ce dont j’avais besoin 🙂
Merci encore !
PS : jolie la boutique démo !
====================
26 août 2021 à 16 h 23 min #264553 -
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.