Bonjour,
suite à quelques posts à ce sujet dernièrement, je voulais faire un point sur le rewriting sur un site de type e-commerce (bien sûr, cette réflexion peut s'adapter à d'autres cas).
Partie théorie
Une page est identifiée par les moteurs par son URL : pour optimiser son référencement, il faut toujours vérifier qu'une page n'est accessible que par 1 et 1 seule URL.
Ce post rappelle bien les bonnes pratiques sur la canonicalisation des URLs qui s'applique d'ailleurs à tous les moteurs. On ne reviendra pas dessus, normalement, c'est quelque chose de connu par les WRInautes assidus.
La pratique
Revenons maintenant sur du concret et sur le quotidien d'un site e-commerce. Des "chefs produits" vont gérer leur rayon : Quotidiennement, ils ajoutent/modifient/archivent/suppriment des fiches produit, des rubriques, des marques, etc... Des techniciens, eux, de leur côté, peuvent injecter automatiquement des catalogues entiers de leurs fournisseurs au format XML ou CSV.
Ce que je vais appeler "rewriting automatique" par la suite de ce post, est le fait de générer une URL à la volée en fonction d'une information contenue en base de données (cette info, n'étant bien sûr pas prévue de prime abord pour cette utilisation).
Faire du rewriting automatique sur des intitulés de rubriques, de marques ou des désignations de produit peut être une très grosse erreur qui peut avoir de lourdes conséquences sur le référencement. Pourquoi ? Tout simplement, parce qu'en modifiant un intitulé, vous allez aussi changer les URLs qui identifient vos pages dans la base de données des moteurs de recherche.
Prenons un exemple concret de rewriting automatique :
- j'ajoute automatiquement un produit via un catalogue XML d'un fournisseur : "Le produit qui est pas mal" est ajouté automatiquement, sans intervention humaine, et donnera une URL : "le-produit-qui-est-pas-mal.html"
- 1 semaine plus tard, le chef produit corrige la désignation pour une désignation plus vendeuse : "Le produit qui est pas mal" deviendra "Le beau produit" changera l'URL en "le-beau-produit.html" à cause du rewriting automatique
- 1 mois plus tard, suite à une analyse de référencement, on s'est apercu que "beau produit" était moins recherché que "chouette produit". Re-changement de désignation : "Le chouette produit" changera de nouveau l'URL en "le-chouette-produit.html"
- etc...
Vous comprenez bien, avec cet exemple, que les moteurs ne vont pas apprécier puisqu'ils ont connu 3 URLs pour exactement la même page.
Voici une liste d'effets indésirable qui peuvent arriver selon les cas où le problème est géré :
- contenu à réindexer par les bots
- création de contenu dupliqué
- perte de "juice" (puisque les liens internes et les backlinks pointaient vers l'ancienne URL)
- perte d'ancienneté
- clics dans les SERPs qui peuvent conduire vers des 404 (puisque l'ancienne URL reste indexée mais n'existe plus)
- etc...
Maintenant, on sait tous que le rewriting est quand même bénéfique au référencement. Historiquement, on sait que les moteurs n'apprécient pas les URLs trop longues.
Voici donc quelques astuces pour utiliser quand même l'URL rewriting tout en se protégeant de ces erreurs :
- pour ceux qui n'ont pas la main sur le code source de leur boutique, je leur conseillerais d'éviter au maximum de modifier les désignations et les intitulés de leurs éléments de navigations. Malheureusement, c'est le seul conseil que je pourrais leur faire. Vous pouvez aussi contacter le fournisseur de votre solution e-commerce pour lui faire part de vos remarques.
Sinon, pour ceux qui peuvent modifier leur code source, je vois 2 solutions :
- Utiliser des redirections 301 : si vous changez une intitulé, assurez-vous que toutes les anciennes URL redirigent en 301 vers la nouvelle. On le répète suffisamment sur le forum, c'est une solution efficace : Les moteurs feront ainsi automatiquement l'association entre les 2 URLs et répercuterons le référencement des anciennes vers la nouvelle.
Oui mais comment faire ça ?
Pour ceux qui passent aussi l'identifiant du produit, de la rubrique, ... par l'URL, vous avez des URL construites ainsi : -monsite.com/produit123456/mon-beau-produit.html où 123456 est l'identifiant (ou la référence) de l'entrée (produit, rubrique, marque, ...) dans votre base de données. Il suffit alors de tester si l'URL est correcte pour le produit 123456 et, si ce n'est pas le cas, de faire une redirection 301 vers la bonne URL (par exemple via un header en PHP).
Pour ceux qui ne passent pas cet identifiant, l'opération est plus délicate. Personnellement, j'enregistrerais un historique des désignations dans une table de ma base de données. Lorsque une URL est appelée, je consulterais cette table et je regarderais si mon URL correspond à la dernière entrée enregistrée pour un produit. Si ce n'est pas le cas, je ferais une 301 vers la dernière entrée. (Cette solution est un peu bidouille, j'avous).
- Utiliser des identifiants d'URLs ou des noms d'entrées pour le permalien ( http://fr.wikipedia.org/wiki/Permalien )
C'est bien sûr la solution que je préfère. Pour cela, il suffit d'ajouter un champs supplémentaire dans votre base de données. Le nom d'entrée n'est enregistré qu'à l'ajout d'une donnée. Il n'est jamais modifié par la suite.
Revenons à mon exemple :
- j'ajoute un produit via un catalogue XML d'un fournisseur : "Le produit qui est pas mal" donnera un nom d'entrée : "le-produit-qui-est-pas-mal" et donc une URL : "le-produit-qui-est-pas-mal.htm"
- 1 semaine plus tard, le chef produit corrige la désignation pour une désignation plus vendeuse : "Le beau produit" ne changera pas le nom d'entrée. L'URL est construite à partir du nom d'entrée et reste "le-produit-qui-est-pas-mal.htm"
- 1 mois plus tard, suite à une analyse de référencement, on s'est apercu que "beau produit" était moins recherché que "chouette produit". Re-changement de désignation : L'URL reste "le-produit-qui-est-pas-mal.htm"
- etc...
L'URL est toujours construite à partir du nom d'entrée, elle ne change donc jamais.
Voila, en espérant que ce post puisse en aider certains. Le rewriting, c'est très bien, à condition qu'il soit bien utilisé. Si vous n'avez pas la possibilité technique de bien l'utiliser, je vous conseillerais de garder vos URLs avec paramètres, car en voulant améliorer votre référencement, vous pourriez tout simplement faire l'inverse.
suite à quelques posts à ce sujet dernièrement, je voulais faire un point sur le rewriting sur un site de type e-commerce (bien sûr, cette réflexion peut s'adapter à d'autres cas).
Partie théorie
Une page est identifiée par les moteurs par son URL : pour optimiser son référencement, il faut toujours vérifier qu'une page n'est accessible que par 1 et 1 seule URL.
Ce post rappelle bien les bonnes pratiques sur la canonicalisation des URLs qui s'applique d'ailleurs à tous les moteurs. On ne reviendra pas dessus, normalement, c'est quelque chose de connu par les WRInautes assidus.
La pratique
Revenons maintenant sur du concret et sur le quotidien d'un site e-commerce. Des "chefs produits" vont gérer leur rayon : Quotidiennement, ils ajoutent/modifient/archivent/suppriment des fiches produit, des rubriques, des marques, etc... Des techniciens, eux, de leur côté, peuvent injecter automatiquement des catalogues entiers de leurs fournisseurs au format XML ou CSV.
Ce que je vais appeler "rewriting automatique" par la suite de ce post, est le fait de générer une URL à la volée en fonction d'une information contenue en base de données (cette info, n'étant bien sûr pas prévue de prime abord pour cette utilisation).
Faire du rewriting automatique sur des intitulés de rubriques, de marques ou des désignations de produit peut être une très grosse erreur qui peut avoir de lourdes conséquences sur le référencement. Pourquoi ? Tout simplement, parce qu'en modifiant un intitulé, vous allez aussi changer les URLs qui identifient vos pages dans la base de données des moteurs de recherche.
Prenons un exemple concret de rewriting automatique :
- j'ajoute automatiquement un produit via un catalogue XML d'un fournisseur : "Le produit qui est pas mal" est ajouté automatiquement, sans intervention humaine, et donnera une URL : "le-produit-qui-est-pas-mal.html"
- 1 semaine plus tard, le chef produit corrige la désignation pour une désignation plus vendeuse : "Le produit qui est pas mal" deviendra "Le beau produit" changera l'URL en "le-beau-produit.html" à cause du rewriting automatique
- 1 mois plus tard, suite à une analyse de référencement, on s'est apercu que "beau produit" était moins recherché que "chouette produit". Re-changement de désignation : "Le chouette produit" changera de nouveau l'URL en "le-chouette-produit.html"
- etc...
Vous comprenez bien, avec cet exemple, que les moteurs ne vont pas apprécier puisqu'ils ont connu 3 URLs pour exactement la même page.
Voici une liste d'effets indésirable qui peuvent arriver selon les cas où le problème est géré :
- contenu à réindexer par les bots
- création de contenu dupliqué
- perte de "juice" (puisque les liens internes et les backlinks pointaient vers l'ancienne URL)
- perte d'ancienneté
- clics dans les SERPs qui peuvent conduire vers des 404 (puisque l'ancienne URL reste indexée mais n'existe plus)
- etc...
Maintenant, on sait tous que le rewriting est quand même bénéfique au référencement. Historiquement, on sait que les moteurs n'apprécient pas les URLs trop longues.
Voici donc quelques astuces pour utiliser quand même l'URL rewriting tout en se protégeant de ces erreurs :
- pour ceux qui n'ont pas la main sur le code source de leur boutique, je leur conseillerais d'éviter au maximum de modifier les désignations et les intitulés de leurs éléments de navigations. Malheureusement, c'est le seul conseil que je pourrais leur faire. Vous pouvez aussi contacter le fournisseur de votre solution e-commerce pour lui faire part de vos remarques.
Sinon, pour ceux qui peuvent modifier leur code source, je vois 2 solutions :
- Utiliser des redirections 301 : si vous changez une intitulé, assurez-vous que toutes les anciennes URL redirigent en 301 vers la nouvelle. On le répète suffisamment sur le forum, c'est une solution efficace : Les moteurs feront ainsi automatiquement l'association entre les 2 URLs et répercuterons le référencement des anciennes vers la nouvelle.
Oui mais comment faire ça ?
Pour ceux qui passent aussi l'identifiant du produit, de la rubrique, ... par l'URL, vous avez des URL construites ainsi : -monsite.com/produit123456/mon-beau-produit.html où 123456 est l'identifiant (ou la référence) de l'entrée (produit, rubrique, marque, ...) dans votre base de données. Il suffit alors de tester si l'URL est correcte pour le produit 123456 et, si ce n'est pas le cas, de faire une redirection 301 vers la bonne URL (par exemple via un header en PHP).
Pour ceux qui ne passent pas cet identifiant, l'opération est plus délicate. Personnellement, j'enregistrerais un historique des désignations dans une table de ma base de données. Lorsque une URL est appelée, je consulterais cette table et je regarderais si mon URL correspond à la dernière entrée enregistrée pour un produit. Si ce n'est pas le cas, je ferais une 301 vers la dernière entrée. (Cette solution est un peu bidouille, j'avous).
- Utiliser des identifiants d'URLs ou des noms d'entrées pour le permalien ( http://fr.wikipedia.org/wiki/Permalien )
C'est bien sûr la solution que je préfère. Pour cela, il suffit d'ajouter un champs supplémentaire dans votre base de données. Le nom d'entrée n'est enregistré qu'à l'ajout d'une donnée. Il n'est jamais modifié par la suite.
Revenons à mon exemple :
- j'ajoute un produit via un catalogue XML d'un fournisseur : "Le produit qui est pas mal" donnera un nom d'entrée : "le-produit-qui-est-pas-mal" et donc une URL : "le-produit-qui-est-pas-mal.htm"
- 1 semaine plus tard, le chef produit corrige la désignation pour une désignation plus vendeuse : "Le beau produit" ne changera pas le nom d'entrée. L'URL est construite à partir du nom d'entrée et reste "le-produit-qui-est-pas-mal.htm"
- 1 mois plus tard, suite à une analyse de référencement, on s'est apercu que "beau produit" était moins recherché que "chouette produit". Re-changement de désignation : L'URL reste "le-produit-qui-est-pas-mal.htm"
- etc...
L'URL est toujours construite à partir du nom d'entrée, elle ne change donc jamais.
Voila, en espérant que ce post puisse en aider certains. Le rewriting, c'est très bien, à condition qu'il soit bien utilisé. Si vous n'avez pas la possibilité technique de bien l'utiliser, je vous conseillerais de garder vos URLs avec paramètres, car en voulant améliorer votre référencement, vous pourriez tout simplement faire l'inverse.