Dans Magento 2, les breadcrumbs (fils d’Ariane) sur la fiche produit sont générés dynamiquement selon le chemin de navigation de l’utilisateur, ce qui permet d’afficher un fil contextuel basé sur la catégorie d’entrée. Cependant, cette logique pose problème : un même produit peut appartenir à plusieurs catégories (ex : promotions, catégories virtuelles), rendant le breadcrumb variable et parfois incohérent pour le SEO ou l’expérience utilisateur
Pour garantir qu’un produit ait toujours un seul breadcrumb cohérent, il est recommandé d’ajouter un attribut personnalisé au produit pour définir sa catégorie principale (et ne pas se contenter de la première catégorie affectée ou d’un choix aléatoire). Cela permet d’éviter les ambiguïtés, surtout lorsque l’affectation aux catégories est automatisée ou multiple.
Attention : si le CSS du breadcrumb n’est pas adapté, le chargement dynamique peut provoquer du CLS (Cumulative Layout Shift), un décalage visuel pénalisant pour la note Google PageSpeed, notamment sur mobile où l’élément est en haut de page.
Solution technique :
- Créer un nouvel attribut produit pour la catégorie principale.
- Remplacer le template du breadcrumb uniquement sur les fiches produits, en adaptant le bloc via les layouts Magento (sans utiliser de preference, mais en étendant le bloc ou via un view model)
- Adapter le CSS pour réserver l’espace du breadcrumb et éviter le CLS.
Ce changement améliore la cohérence SEO, l’expérience utilisateur et la performance web, tout en respectant les bonnes pratiques Magento.