SEO Technique

Gestion des paramètres d'URL pour les boutiques Magento : le guide

Les paramètres d'URL Magento (?___store, UTM) sont un casse-tête SEO qui grignote votre budget de crawl et crée des doublons. Découvrez comment les traiter correctement — canonical, redirections, robots.txt — sans commettre les erreurs classiques.

Gestion des paramètres d'URL pour les boutiques Magento : le guide

Un lien qui se termine par ?___store=fr&___from_store=default, ça vous parle ? Si vous administrez une boutique Magento, vous avez forcément déjà vu ce genre d'URL atterrir dans une Search Console, dans un rapport d'audit ou dans un crawler un peu trop zélé. Et à chaque fois, la même question : qu'est-ce que je fais de ça ?

Les paramètres d'URL sont la partie la moins glamour du SEO Magento. Personne ne les configure avec plaisir. Mais quand on les laisse filer, ils grignent du budget de crawl, créent des doublons et parfois cassent purement et simplement la navigation entre plusieurs store views. J'ai passé un nombre déraisonnable d'heures sur ce sujet sur mes propres projets et chez des clients, et j'ai commis à peu près toutes les erreurs possibles avant de comprendre la logique.

Points clés à retenir

  • Distinguer les paramètres fonctionnels Magento (___store, ___from_store) des paramètres de trafic (UTM, gclid) et des paramètres de tri/filtres : ils ne se traitent pas de la même façon.
  • La balise canonical native de Magento est souvent désactivée par défaut : vérifiez-la avant tout le reste.
  • Le paramètre ?___store= ne devrait jamais être indexé : la bonne réponse est souvent une redirection ou une exclusion propre, pas un simple blocage.
  • Un robots.txt bien rédigé ne remplace pas un canonical cohérent. Les deux travaillent ensemble.
  • Les paramètres de campagne (UTM) n'ont rien à faire dans l'index : le budget de crawl est une ressource, pas une poubelle.

Pourquoi les paramètres d'URL Magento sont un vrai casse-tête

Sur un Magento standard, une même page produit ou catégorie peut être accessible via plusieurs URL différentes. Magento génère des paramètres pour tout un tas de raisons : changer de store view, trier une liste de produits, filtrer par attribut, revenir d'une page précédente. Chacun de ces paramètres crée une URL distincte aux yeux de Google, même si le contenu est identique.

Résultat des courses : un crawler qui explore votre boutique peut se retrouver à indexer des dizaines de variantes d'une seule page catégorie. Sur un catalogue de quelques milliers de références avec beaucoup de filtres, j'ai déjà constaté que la majorité des URL découvertes n'étaient pas les pages qu'on voulait réellement voir apparaître. Ça fait mal au budget de crawl.

Paramètres fonctionnels, de tri et de trafic : trois familles à ne pas mélanger

Avant de toucher à quoi que ce soit, il faut classer les paramètres. Voici comment je les organise mentalement :

  • Fonctionnels Magento : ___store, ___from_store, SID (session, à ne surtout pas laisser traîner).
  • De navigation/filtre : product_list_order, product_list_limit, product_list_dir, ainsi que les filtres d'attributs type ?color=rouge ou ?taille=42.
  • De trafic : utm_source, utm_medium, gclid, fbclid, msclkid.

Chacune de ces familles a un traitement propre. Vouloir les traiter en bloc avec un seul Disallow dans le robots.txt, c'est la garantie de casser quelque chose. Et j'ai fait cette erreur une fois sur une boutique multilingue — j'y reviens plus bas.

Configurer proprement les paramètres d'URL dans l'admin Magento

Le point de départ n'est pas le robots.txt, c'est le back-office. Plusieurs réglages conditionnent la façon dont Magento génère et propage les paramètres. Les ignorer, c'est colmater en aval ce qu'on aurait pu éviter en amont.

Configurer proprement les paramètres d'URL dans l'admin Magento

Use Web Server Rewrites et Add Store Code to URLs

Deux options sont à surveiller dans Stores > Configuration > General > Web :

  1. Use Web Server Rewrites : à passer sur Yes. Sans cela, vos URL contiennent index.php et perdent en propreté. Côté paramètres, ce réglage évite aussi que certaines URLs soient dupliquées avec et sans le fichier d'entrée.
  2. Add Store Code to URLs : à activer si vous voulez que le code magasin apparaisse dans l'URL (/fr/, /en/). C'est souvent une meilleure solution que de laisser Magento propager ___store dans les liens quand les langues ne sont pas sur des domaines distincts.

Quand cette option est désactivée et que vous avez plusieurs store views sur un même domaine, Magento a tendance à utiliser ?___store= pour basculer d'une langue à l'autre. Ce n'est pas un bug, c'est le comportement prévu. Mais si vous ne contrôlez pas ces URL, elles finissent tôt ou tard dans l'index.

Balises canonical : activer ce que Magento laisse éteint

Dans Stores > Configuration > Catalog > Catalog, la section Price cache un réglage souvent négligé : Use Canonical Link Meta Tag For Categories et … For Products. Par défaut, ce n'est pas toujours activé. Or c'est votre premier filet de sécurité contre les paramètres parasites sur une page catégorie.

Autre réglage utile au même endroit : la balise meta robots par défaut du catalogue. Si vous n'avez pas envie d'indexer les combinaisons de filtres, un noindex, follow sur les pages filtrées peut sauver la mise — mais à condition d'être appliqué au bon endroit et pas à la page catégorie parente.

Type de paramètre Bon réflexe À éviter
___store / ___from_store Redirection 301 vers l'URL propre de la store view, ou canonique vers cette URL Bloquer en robots.txt sans rediriger
Tri / limite / direction Canonical vers la page catégorie sans paramètre Laisser indexer toutes les variantes
Filtres d'attributs Décider au cas par cas : noindex sur les combinaisons peu utiles, indexation sélective sur les plus rentables Tout bloquer, tout indexer
UTM / gclid / fbclid Disallow ciblé dans robots.txt et suppression des paramètres en interne Les laisser générer des canonicals

Le cas épineux du paramètre ___store en multi-boutique

Franchement, c'est là que j'ai le plus souffert. Une boutique avec trois langues, un seul domaine, trois store views. Magento bascule automatiquement via ?___store=. Un utilisateur qui clique sur le sélecteur de langue se retrouve avec une URL du type https://exemple.com/categorie-produit?___store=en. Google voit deux URL pour un contenu en deux langues, avec un paramètre qui n'a aucune valeur sémantique.

Le cas épineux du paramètre ___store en multi-boutique

La bonne approche, dans mon expérience, est de rediriger ce paramètre en 301 vers l'URL propre de la langue concernée (par exemple /en/category-product), à condition d'avoir activé Add Store Code to URLs. Sinon, on est coincé : soit on laisse le paramètre et on pose un canonical correct, soit on bloque en robots.txt — et dans ce dernier cas, Google ne pourra plus explorer ce paramètre pour comprendre que les deux pages pointent vers la même chose.

Attention à hreflang et aux redirections mal placées

Un piège classique : rediriger toutes les URL avec ___store vers la version par défaut sans tenir compte de la langue demandée. J'ai vu la configuration une fois chez un client, et le résultat était une boucle de redirection pour les utilisateurs anglophones. Pas joli.

Autre point : si vous gérez du multilingue, hreflang et canonical doivent être cohérents entre eux. Un canonical qui pointe vers la version française sur une page anglaise annule votre hreflang. Testez sur quelques pages avant de généraliser, c'est un conseil qui vous fera gagner du temps.

Protéger le budget de crawl face aux UTM et paramètres publicitaires

Les paramètres marketing sont un autre sujet. utm_*, gclid, fbclid, msclkid : ces paramètres n'existent que pour le tracking. Ils n'ont aucune raison d'être indexés, ni même explorés de façon répétée. Or un crawler un peu curieux peut en trouver des variantes à la pelle si vos liens publicitaires partagent la même base que vos liens organiques.

Deux actions concrètes :

  • Ajouter des directives Disallow ciblées dans le robots.txt (/?utm_, /?gclid=, /*?fbclid=). Attention : ce n'est pas une protection absolue, mais ça limite clairement la casse.
  • Vérifier que vos balises canonical sur les pages cibles ne reprennent jamais ces paramètres dans leur URL canonique, ce qui arrive encore quand on bricole un template ou un module tiers.

Faut-il bloquer les filtres dans robots.txt ?

Ma réponse est non, en tout cas pas en bloc. Bloquer tous les filtres empêche Google d'explorer les pages filtrées, ce qui veut dire qu'il ne verra pas les liens directs qui y mènent. Le mieux est de choisir : soit vous posez un noindex, follow sur les combinaisons que vous jugez inutiles, soit vous laissez indexer les rares filtres qui génèrent du trafic organique. J'ai personnellement toujours penché pour le second choix sur les catégories commerciales avec peu d'attributs — disons une poignée de filtres vraiment pertinents — et pour le premier sur les catégories à forte combinatoire.

Checklist pour reprendre le contrôle

Quand je reprends une boutique Magento et que je veux nettoyer les paramètres d'URL, je déroule toujours la même séquence, dans cet ordre :

  1. Activer Use Web Server Rewrites et vérifier le réglage Add Store Code to URLs.
  2. Activer les canonical produits et catégories dans la config catalogue.
  3. Auditer une centaine d'URL découvertes dans la Search Console pour identifier les paramètres qui dominent.
  4. Traiter ___store par redirection 301, pas par blocage.
  5. Ajouter dans robots.txt les exclusions ciblées pour les paramètres de trafic.
  6. Vérifier la cohérence hreflang / canonical pour le multilingue.
  7. Surveiller le rapport Pages de la Search Console pendant 4 à 6 semaines pour mesurer l'effet.

Le dernier point est celui qu'on saute le plus souvent, moi le premier. Mais sans suivi, impossible de savoir si le nettoyage a servi à quelque chose. Sur un projet, j'ai mis en place toute la séquence et le nombre d'URL explorées par Google a chuté de moitié en un mois et demi. Sur un autre, quasiment aucun changement : le problème venait d'ailleurs, d'une pagination sans canonical. Comme quoi, on ne peut pas généraliser.

Au final, les paramètres d'URL Magento ne sont pas un sujet technique isolé. C'est le point de rencontre entre la configuration du catalogue, la stratégie multilingue et la façon dont on pense son référencement. On peut les ignorer longtemps, puis découvrir un jour que 40 % de son index est constitué de variantes sans valeur. Le pire dans cette histoire ? Ce n'est jamais une catastrophe visible. Juste une lente érosion du trafic qu'on ne remarque que quand il a déjà disparu.

Pauline Lemaire

Pauline Lemaire

Pauline Lemaire est journaliste spécialisée dans les domaines du SEO technique, des stratégies de liens et de la construction d’autorité en ligne. Depuis plus de huit ans, elle couvre l’actualité des algorithmes, l’optimisation des infrastructures web et les bonnes pratiques de netlinking pour des publications professionnelles. Son travail s’appuie sur une veille constante et une approche rigoureuse des enjeux de visibilité sur les moteurs de recherche.

Voir tous les articles →