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 3 mois.
-
AuteurMessages
-
7 juin 2021 à 15 h 37 min #237646
Bonjour à tous, je suis nouvelle sur Woocommerce ! Je suis en train de créer un site e-Commerce pour un débit de boisson. Je souhaite que les commandes, peu importe le type de produit, puissent se faire par multiple de 3. J’ai trouvé comment ajouter des steps en testant qqs plugin de type ‘quantity manager’. Mais cela bloque chaque produit à 3 minimum, et on ne peut pas, par exemple panacher plusieurs produits. En gros je souhaite pouvoir panacher tous les produits, mais que le panier ne permettent d’acheter au total que par 3 bouteilles, ou 6, ou 9 ou 12 etc ... (j’ai un bon exemple à montrer sur cette boutique, c exactement le résultat que je souhaite obtenir : https://www.ruhlmann-schutz.fr/panier/. Avec la possibilité de contourner cette règle pour les coffrets cadeaux qui pourraient s’acheter à l’unité. Auriez vous des conseils à me donner ou un plugin qui me permettent d’obtenir ce résultat ? Merci d’avance de votre précieuse aide !
====================
8 juin 2021 à 12 h 19 min #237856Bonjour à 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.