Chaque marchand a un fonctionnement très spécifique en ce qui concerne la logistique, la gestion des produits, la manière de les identifier, beaucoup de e-commerçants utilisent la référence de Prestashop.
La référence produit
A quoi sert la référence produit de Prestashop ? Celle-ci permet au marchand d’identifier un produit par une chaine de caractères de son choix. Cette référence sert surtout à l’interne et sera affichée au client sur la fiche produit (on évitera donc de mettre le code fournisseur dedans). Par contre, ce que j’ai toujours eu de la peine à comprendre c’est que :
- Il est possible de mettre une référence identique sur plusieurs produits, Prestashop n’effectue pas de contrôle de doublons.
- Pourquoi mettre une référence sur le produit principal, lorsque celui-ci dispose de déclinaisons, la référence principale devrait être à mon sens désactivée dans ce cas.

La référence permet d’identifier rapidement un produit, surtout lorsque vous avez des échanges par e-mail / téléphone avec vos clients.
Le marchand débordé
Certains marchands ont par exemple commencé à indiquer les références de leurs produits… puis ils ont fait une pause et après ne se souviennent plus si tous leurs produits ont bien une référence. Et surtout si toutes les références sont uniques, cela peut-être important si vous utilisez un système externe qui communique avec Prestashop et qui se sert de la référence produit comme identifiant de mise à jour.
Renommer les références en masse
Nous allons voir ensemble un processus qui permet de remettre à jour toutes les références des produits de manière à ce que chaque produit et chaque déclinaison, aient une référence, mais aussi qu’elles soient uniques.
Pour cela vous pouvez télécharger le script pour Prestashop, il suffira ensuite de mettre le dossier « scripts » dans votre dossier « modules » et d’exécuter l’url suivante : http://www.votresite.ch/modules/scripts/rename_references.php
Pour ceux qui préfèrent directement le code php
<?php /* * Permet de re-définir des références uniques pour tous les articles du shop */ require('/../../config/config.inc.php'); $prefix_ref = 'REFB-'; $prefix_refd = 'REFD-'; $count = 0; $products = Db::getInstance()->executeS('SELECT `id_product` FROM '._DB_PREFIX_.'product'); foreach($products as $p){ Db::getInstance()->execute('UPDATE '._DB_PREFIX_.'product SET `reference`="'.pSQL($prefix_ref.$p['id_product']).'" WHERE `id_product`="'.pSQL($p['id_product']).'"'); $count++; } $products_attributes = Db::getInstance()->executeS('SELECT `id_product_attribute` FROM '._DB_PREFIX_.'product_attribute'); foreach($products_attributes as $pa){ Db::getInstance()->execute('UPDATE '._DB_PREFIX_.'product_attribute SET `reference`="'.pSQL($prefix_refd.$pa['id_product_attribute']).'" WHERE `id_product_attribute`="'.pSQL($pa['id_product_attribute']).'"'); $count++; } echo 'Félicitation <strong>'.$count.'</strong> références mises à jour !'; ?>
La manière de faire est toute simple, tous les produits sont renommés en utilisant la méthode suivante pour les produits simples « REFB-IDPRODUIT » et pour les déclinaisons « REFD-IDDECLINAISON » ce qui permet d’assurer que l’information soit bien unique.
Et pour les nouveaux produits
Vous avez deux possibilités, vous pouvez « ré-exécuter » le script lorsque vous aurez saisi de nouveaux produits les références resteront les mêmes pour les anciens produits et les nouveaux seront automatiquement complétés. Si vous désirez saisir manuellement vos références utilisez toujours en préfixe « REFB- » ou « REFD- » pour savoir s’il s’agit d’un produit principal ou d’une déclinaison, puis ensuite mettez l’id du produit + (-1,-2,-3,-4) si vous avez par exemple 4 déclinaisons.
Bilan
De mon côté dans les modules qui doivent communiquer avec d’autres plateformes (comme WinBIZ), je me sers souvent de cette référence. Et il n’est pas rare dans une boutique d’avoir des références vides ou à double, ce qui provoquerait ensuite un vrai problème pour l’échange des données. Cette petite méthode peut faire gagner du temps et assure au moins d’avoir des codes articles toujours rationnels, même s’ils ne sont pas très parlants.
Cet article Renommez toutes les références de vos produits Prestashop est apparu en premier sur Webbax | Expert E-commerce Prestashop.