Magento : Comment afficher les nouveaux produits dans les listes

Dans un commerce électronique en production, il relève d’une bonne pratique d’indiquer clairement les nouveaux produits afin d’attirer l’attention de visiteurs réguliers. D’ailleurs, il est bien normal de vouloir mettre de l’avant les nouveautés qu’on ajoute à son catalogue, en partie pour pouvoir jauger l’intérêt généré autour de ces nouveaux produits.

Bien que Magento permette de configurer des dates de début et de fin pour un produit (indiquant à partir de quand et jusqu’à quand votre produit est considéré comme étant une nouveauté), le template par défaut ne fait aucune mention de ces nouveautés. C’est bien là l’objectif de ce mini-tutoriel : voir comment afficher les nouveautés dans les listes de produits sur Magento.

En fait, ce n’est rien de compliqué, il faut seulement savoir comment s’y prendre. Cette information, que j’ai trouvée sur ce forum, ne semble pas très répandue sur l’Internet; et pourtant, s’il faut encourager un peu le développement de la communauté Magento, donner des réponses aux mystères Magento enfouis peut y contribuer. Je l’ai donc résumée, clarifiée, mis en exemple et même en téléchargement au bas de cet article, pour les paresseux!

Tout d’abord, dans la fiche d’un produit dans le backend de votre boutique, indiquez des dates de début et de fin de son état de nouveauté. Pour effectuer un test, mettez (évidemment) une date inférieure à aujourd’hui pour le début et une date supérieure pour la fin.

Le bout de code à ajouter pour accéder aux variables des dates de nouveauté d’un produit est le suivant :

load($_product->getID())->getNewsFromDate();
$newToDate = Mage::getModel(‘catalog/product’)->load($_product->getID())->getNewsToDate();

// Date et heure actuelles
$now = date(« Y-m-d H:m:s »);

if($newFromDate < $now && $newToDate > $now) {
echo « nv »;
}
?>

Les variables $newFromDate et $newToDate récupèrent la donnée de début et de fin de nouveauté dans les données disponibles pour le produit actif lors du parcours de la boucle. Ces données ne sont accessibles que si vous avez bien attribué des dates au produit en question, via la page admin. Si vous ne voyez aucun changement, vous avez peut-être passé outre cette étape.

Le fichier où ajouter le code se nomme list.phtml, situé dans votre site à cet emplacement (remplacer votretheme par le nom de votre thème, default par défaut) :

/app/design/frontend/default/yourtheme/template/catalog/product/list.phtml

Pour ajouter le code pour le mode « liste » (list), il faut vous rendre à la ligne 47, après ce début de boucle :

Pour le mode « grille » (grid), il faut se rendre à la ligne 93 après le même bout de code que ci-dessus ou presque.

Dans les deux cas, vous pouvez placer le bout de code à ajouter où vous le souhaitez, pourvu que ce soit à l’intérieur de la boucle foreach. Voici à quoi ressemble la fin de ces boucles, que vous ne devez pas dépasser :

Si vous avez bien suivi ce mini-tutoriel, vous devriez apercevoir au moins un produit avec la mention « Ceci est une nouveauté! ». Si ça ne fonctionne pas, vous pouvez toujours partir du fichier déjà prêt (Magento v1.3.2.4) et disponible en téléchargement ci-dessous, ou demander de l’aide dans les commentaires de cet article!

Ce message est également disponible en : Anglais

Une réflexion au sujet de « Magento : Comment afficher les nouveaux produits dans les listes »

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *