Magento ou la face cachée de l’API Product: comment créer des produits configurables en masse

Logo Magento

OK! Nous sommes tous d’accord: Magento est un produit formidable. Mais comme tout bon produit qui se respecte, reconnaissons-le, il lui arrive aussi de présenter quelques faiblesses. Vous voulez un exemple? La documentation des API.

Dans le cadre d’un projet de site e-commerce construit sur une base Magento, nous nous sommes retrouvés confrontés à la nécessité de migrer des milliers de produits. Bien entendu, hors de question de faire travailler une batterie d’ingénieurs pour saisir toutes ces références dans le catalogue produit de Magento, d’autant plus que Magento dispose d’une formidable fonction de création de produits livrée clé en main avec son API standard.

Oui mais voilà, cette API est plutôt évasive quant à la création de produits configurables. Et c’est là que les ennuis commencent: notre projet est entièrement articulé autour de produits configurables! Après plusieurs tâtonnements, nous nous sommes rendus à l’évidence: en terme de documentation, l’API de Magento ne fournit aucune indication digne de ce nom sur la façon de créer des produits configurables. Plutôt embêtant…

Dieu merci, Google est le meilleur ami du geek! Mais une fois de plus, à notre grande surprise, après avoir écumé moultes forums à la recherche d’une solution providentielle, nous nous sommes aperçus combien il était difficile de dénicher sur le net une information pertinente et exploitable… jusqu’à tomber sur ce blog:  http://www.stephenrhoades.com/?p=338

Eurêka, l’auteur de ce blog nous livre une solution parfaitement adaptée à notre besoin, avec de surcroît, un effort appréciable de pédagogie. Pour nos lecteurs qui seraient fâchés avec la langue de Shakespeare, résumons en quelques lignes l’approche adoptée par notre deus ex machina pour créer un produit configurable et y associer des produits simples.

1 – Modifier l’API Core de Magento en retouchant quelques lignes du fichier Mage/Catalog/Model/Product/Api.php. L’idée est d’enrichir la méthode _prepareDataForSave en y ajoutant quelques lignes de code permettant de créer un produit configurable (voir tous les détails à l’adresse du blog évoqué plus haut)

2 – Préparer l’appel de l’API de la façon suivante:

  • Construire la liste des produits simples
  • Appeler la fonction de création des produits simples
  • Construire la liste des données configurables de chaque produit simple (que nous appelerons configurableProductsData)
  • Construire la liste des attributs configurables et la liste des valeurs de chaque attributs configurables (que nous appelerons configurableAttributesData)
  • Appeler la fonction de création du produit configurable

Le secret de cette méthode est de construire une structure de listes imbriquées combinant tous les paramètres nécessaires à la création d’un produit configurable. CQFD.

Et maintenant, à votre tour de jouer! En espérant que cette solution, comme ce fut le cas pour nous, vous ôte une belle épine du pied.

Screenshot Magento

Posts Voisins:

Tags: ,

Vous pouvez laisser une réponse pertinente et obtenir ainsi un lien en Dofollow!

Une Réponse to “Magento ou la face cachée de l’API Product: comment créer des produits configurables en masse

  1. Johann from Magento says:

    Merci, billet très utile pour notre projet !

Laisser une réponse

CommentLuv Enabled

Merci de me notifier tout nouveau commentaire par mail. Vous pouvez aussi souscrire à cet article sans laisser de commentaire.