Jump to content

Ajout d'une declinaison d'article dans le panier ajax


Recommended Posts

Bonjour.

 

Je suis nouveau sur prestashop et j'ai débuté il y a quelques mois.

Après avoir effectué quelques recherches ces jours-ci, je post ici mon problème.

 

Tout d'abord :

 

Version : 1.4.8.2

Serveur : localhost

Thème : Prestashop (modifié pour les besoins du site)

 

Contexte :

 

Mes produits sont des rideaux, coussins, tabliers, nappes, etc.. Ils se déclinent en plusieurs motifs, plusieurs tailles. Par exemple on imagine le produit A décliné en motif m1, m2 et m3. Ainsi que le produit B décliné en m2, m3 et m4. J'ai donc développé un module pour la page d'accueil qui affiche les nouveaux motifs sur le hookHome. En cliquant sur un motif, on accède sur la page qui liste tous les produits de ce motif là. J'ai développé cette page personnalisée en me basant sur celle qui affiche tous les produits (product-list.tpl).

 

Problème :

 

J'ai donc le bouton "Ajouter au panier" comme sur product-list.tpl qui ajoute bien mon article cependant il ajoute uniquement la déclinaison par défaut du produit.

 

<a class="button ajax_add_to_cart_button exclusive" rel="ajax_id_product_{$product.id|intval}" href="{$link->getPageLink('cart.php')}?add&id_product={$product.id|intval}{if isset($static_token)}&token={$static_token}{/if}" title="{l s='Add to cart'}">{l s='Add to cart'}</a>

 

J'ai tenté d'ajouter "id_attribute" dans le lien du bouton "Ajouter au panier" comme ci-dessous mais rien ne change :

 

<a class="button ajax_add_to_cart_button exclusive" rel="ajax_id_product_{$product.id|intval}" href="{$link->getPageLink('cart.php')}?add&id_product={$product.id|intval}&id_product_attribute={$product.id_attribute}{if isset($static_token)}&token={$static_token}{/if}" title="{l s='Add to cart'}">{l s='Add to cart'}</a>

 

En regardant dans le CartController je n'arrive pas a m'y retrouver. Quelqu'un aurait-il moyen de m'expliquer comment transmettre la déclinaison que je veux ajouter au panier ?

 

J'espère avoir bien expliquer mon problème.

 

Cordialement,

Clément.

Link to comment
Share on other sites

  • 1 month later...

Bonjour,

 

J'ai le même problème. Avez vous trouvé une solution ?

 

De mon coté, j'utilise avec un évènement "onclick" la fonction ajaxCart.add({$product->id|intval}, $('idCombination').val(), false, this , 1, null); Le deuxieme paramètre correspond aux attributs mais à part en mettant null et donc ajouter au panier avec les déclinaisons par défauts, l'ajout ne se fais pas. Pas moyen de trouver le bon paramètre. J'utilise la version 1.5 .

 

 

Si quelqu'un a une idée ? Merci.

 

Cordialement

__chris

Edited by __chris (see edit history)
Link to comment
Share on other sites

  • 2 years later...

Bonjour, 3 ans plus tard j'ai eu le meme probleme alors je vous post la solution au cas ou (marche pour la 1.6)

 

- Installer firebug (plugin firefox/chrome)

- aller sur la page produit du produit en question puis tester d'ajouter les différentes déclinaisons au panier avec firebug d'ouvert.

- regarder l'onglet console de firebug et vous devriez y voir les requetes ajax

- regarder l'onglet "post" de la requete pour voir tt les variables passées en post et vous devriez en voir une du nom de "ipa" c'est celle la qu'on cherche.

 

- refaite votre fonction : ajaxCart.add("id.produit", "ipa.declinaison"); ajaxCart.refresh();

 

ET VOILA !

 

Si quelqu'un ne comprend pas je suis dispo par PM.

Link to comment
Share on other sites

  • 2 years later...

Bonjour,

 

Je relance ce sujet. Je ne comprends pas la remarque de Keukli.

 

J'ai un problème similaire : j'ai différentes déclinaisons de produits, et lorsque je clique sur le bouton "ajouter au panier", cela ajoute toujours la déclinaison par défaut du produit.

 

Auriez-vous une idée d'où peut venir le problème ?

 

Je suis en 1.6.1.13...

 

Merci d'avance,

Antoine

Link to comment
Share on other sites

  • 1 year later...

Oui, moi aussi je reste bloqué devant ce problème d'achat immédiat sans passer par la case choix des déclinaisons.

Je pensais modifier le bouton "achat immédiat" dans la liste des produits si des déclinaisons existent , mais je ne sais comment faire pour détecter ce critère.

 

Merci pour toute piste de travail.

ps 1.6.2

Edited by dan13d (see edit history)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...