THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline


Bonjour,

Je souhaite, lorsque l'on ajoute un produit au panier, y ajouter d'autres produits.
Soit automatiquement (mais c'est un peu brutal commercialement), soit si la personne coche une case devant ces produits liés.

Y'a-t-il un module ou une fonction qui fait cela ?

Merci.

Offline


Il n'existe pas encore de module pour faire ça. Mais le module a écrire est assez simple :

En gros, il te faut écrire un contrôleur spécifique qui va récupérer dans la requête les ID des produits que tu veux ajouter au panier, et pour chaque ID, tu va dispatcher un event CART_ADDITEM.

Un peu comme ce que faire le CartController ici, mais sur plusieurs IDs : https://github.com/thelia/thelia/blob/m … er.php#L45

Tu n'est pas obligé de créer et gérer une Form, tu peux juste simplement récupérer ce qui a été posté dans la form de ton template avec quelque chose comme : $this->getRequest()->get('nom_du_parametre', []);


OpenStudio Toulouse

Offline


Bonjour,

Avec cette technique la fonction afterModifyCart définie dans le CartController n'est jamais appelée. Est-ce un problème ?

Merci d'avance de la réponse.

Offline


Merci de me mettre sur la voie. Mais les compétences, et surtout le temps me manquent...

Offline


Ce n'est pas un problème si ton contrôleur étend le contrôleur Front, et appelle la méthode afterModifyCart() une fois les articles ajoutés au panier.


OpenStudio Toulouse