THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

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

Offline

#1 Ajout au panier via l'URL

(12-08-2014 08:01:30)


Bonjour,

Pour un besoin particulier, je dois ajouter un article au panier via l'URL.

Avec Thelia 1, je redirige vers le panier avec un simple ?action=ajouter&ref=REFERENCE_DE_MON_PRODUIT à la fin de l'URL. Ça n'est certes pas très propre, mais ça fonctionne.

J'ai bien compris qu'avec Thelia 2 l'ajout d'un produit au panier ne se fait plus du tout de la même façon, mais j'ai du mal à comprendre le nouveau fonctionnement...

Comment puis-je ajouter mon produit au panier via l'URL ?

Merci !

Last edited by iSkean (16-08-2014 10:58:21)

Offline


Aucune idée...?

Offline


Une approche qui peut marcher serait de créer un module avec un controller qui récupère les paramètres de l'URL et appelle l'action d'ajout dans le panier et redirige ensuite vers le panier (ou ailleurs d'ailleurs)

Pour l'action d'ajout dans le panier, c'est TheliaEvents::CART_ADDITEM a priori

et donc un truc du style :

        $cartEvent = $this->getCartEvent();
        $cartEvent->setNewness(true);
        $cartEvent->setAppend(true);
        $cartEvent->setQuantity(1);
        $cartEvent->setProductSaleElementsId($product->getDefaultSaleElements()[0]);
        $cartEvent->setProduct($product->getId());
        $this->getDispatcher()->dispatch(TheliaEvents::CART_ADDITEM, $cartEvent);
        return $this->redirectToRoute("cart.view");

(inspiré du code de local/module/Front/Controller/CartController)

Offline


Du coup ca m'a donné l'idée d'écrire un article sur ce sujet sur mon blog :

http://jbl2024.logdown.com/posts/221107 … ontrollers

(et la partie 1 pour démarrer : http://jbl2024.logdown.com/posts/221050 … in-part-1)

il y a toutes les explications pour faire ca via un module.

Offline

  • manu
  • faï tot petar miladiu

Offline