Question

Note: Ceci est un X-Post de StackOverflow, je l'ai mis là avant de se rappeler ce subexchange existait donc des excuses pour le double-up.

Ma question entoure la méthode Ajouter à la carte pour des produits configurables et si un produit configurable via l'URL / querystring est possible.

Le Wiki Magento a une ressource pour ajouter un produit au panier par chaîne de requête pour Magento <1.3 ICI

Cette méthode cite un exemple en utilisant cet:

http://www.your_domain.com/checkout/cart/add?product=68&qty=1&super_attribute[528]=55&super_attribute[525]=56

Il mentionne également que cette version était valide 1.3.

J'ai été jouer avec cela en 1.7 et ont remarqué une différence majeure en 1.7 est la clé chiffrée dans la méthode ->getAddUrl() pour l'action formulaire Attribtue maintenant les URL ressemblent plus

http://www.your_domain.com.au/checkout/cart/add/uenc/aHR0cDovL3d3dy5jdWx0dXJla2luZ3MuY29tLmF1L2FjY2Vzc29yaWVzL3NvbC1yZXB1YmxpYy90cmFja3Mtb24tZWFyLWJsYWNrLTM1OTg5Lmh0bWw_X19fU0lEPVU,/product/35900/

Avec l'ID de produit étant le 35900.

Si j'utilise cette URL dans le navigateur, il me diriger vers la page du produit avec un message disant S'il vous plaît spécifier l'option du produit (s).

J'ai essayé de passer les options d'attribut valeur souhaitée dans l'URL pour ajouter le produit au panier sans succès. (Par souci d'économie d'espace, je suis en omettant l'URL jusqu'à et y compris la clé chiffrée) J'ai essayé des méthodes ces vain:

/product/35900/super_attribute/49265/4834
/product/35900/super_attribute/49265=4834
/product/35900/49265=4834
/product/35900/49265/4834

Ma question est: Est-il possible d'ajouter un produit configurable via l'URL à votre panier dans Magento et si oui, quel est le format pour faire passer l'id super_attribute et attribut Option Valeur

Était-ce utile?

La solution

Cela a fonctionné pour moi CE 1.7.0.2 (avec des données échantillon):

/checkout/cart/add/product/126?super_attribute[525]=100&super_attribute[272]=22

NOTE (ce casse-tête me un peu): Il y a une différence entre l'appel:

/checkout/cart/add/product/126?super_attribute[525]=100&super_attribute[272]=22

et

/checkout/cart/add/product/126?super_attribute[272]=22&super_attribute[525]=100

Je veux dire l'ordre des paramètres de super_attribute est important. Après avoir appelé les 2 URL ci-dessus j'ai fini avec 2 lignes panier du même produit avec les mêmes options. on ressemblait à ceci:

  

Taille Petit Couleur Vert

et l'autre

  

Couleur Vert Taille Petit

Je suppose que si vous ajoutez les produits au panier via l'URL que vous devez garder l'ordre des attributs comme indiqué sur la page d'affichage du produit pour la cohérence.

Autres conseils

Dans les dernières versions de magento, nous devons ajouter la clé de forme aussi.

https://{site-name}/checkout/cart/add/product/{product_id}/form_key/{form_key}?super_attribute[{attribute_id}]={attribute_value}&super_attribute[{attribute_id}]={attribute_value}
Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top