Évitez les problèmes d' URLs dupliquées
Pourquoi le contenu dupliqué est-il problématique ?
Tout comme la problématique sur les URLs avec ou sans www, toutes les sortes de contenus dupliqués peuvent, potentiellement être un problème pour votre positionnement dans les résultats des moteurs de recherche. Le contenu dupliqué dans Joomla désigne du contenu identique répété sur plusieurs URLs. Que ce soit intentionnellement (en répétant le contenu par copier/coller) ou techniquement (comme le problème www/nonwww), c'est une problématique identique pour Google. Dans les deux cas, cela peut nuire à votre classement, car Google ne sait tout simplement pas lequel de ces contenus dupliqués est le bon et divise la valeur SEO entre les deux URLs, ce qui se traduit par un classement inférieur dans les résultats de recherche. Bien sûr, vous devrez vous assurer que votre contenu est unique et qu'il n'est pas copié ailleurs ou réutilisé dans d'autres parties de vos sites, mais vous devrez également veiller à ce qu'une même page ne soit pas accessible par plusieurs URLs.
Le contenu dupliqué dans Joomla
Beaucoup de CMS open source ont souvent cette problématique et Joomla en fait partie. Même si vous avez activé la réécriture d'URLs dans la configuration de votre site Joomla, les URls non réécrites existent toujours. En clair 2 URLs permettent d'accéder au même contenu, et souvent beaucoup plus que 2. Les URLs dupliquées peuvent exister pour les raisons suivantes :
- Plus particulièrement dans Joomla : un même élément peut être accessible à partir de plusieurs éléments de menu (ce qui est une mauvaise configuration de la part de l'administrateur).
- URLs avec ou sans www, tel que détaillé dans l'article précédent.
- Les URL non-SEF sont toujours accessibles, malgré l'activation de la récriture d' URLs, comme ceci : /index.php?option=com_content&view=article&id=2 (et bien d'autres).
- Des URLs de pages se terminant par index.html, index.php, etc, et qui montrent le même contenu que la page sans le texte index.
- Paramètres dans l'URL, comme..../page1?font-size=large (plus d'informations à ce sujet dans ce blogpost : www.searchenginejournal.com/url-parameter-handling-seo/)
- Trailing slashes
- Problèmes de lettres en capitales ou minuscules (créez toujours des URLs en minuscules)
- Pages avec une navigation interne sous forme d'onglets : parfois, chaque onglet possède un lien d'ancrage distinct, comme /page#tab1, /page#tab2, etc. Tous ces onglets font bien sûr partie d'une même page, mais Google peut considérer chaque variante comme une URL différente. Pour les pages de ce type, la mise en place d'une URL canonique (voir plus loin) est la solution conseillée.
Avoir des pages accessibles depuis de multiples URLs peut nuire à votre positionnement. Aussi est-il préférable de se prémunir contre cette problématique, ceci peut être fait de différentes façons. Même si certaines de ces solutions semblent uniques, vous pouvez les combiner pour complétement éradiquer votre site de ces URLs dupliquées :
Bien paramétrer les menus
L'une des causes courante d'URLs dupliquées provient du simple fait qu'un article Joomla est accessible depuis différents éléments de menu. C'est souvent le cas lorsqu' un article est accessible depuis un élément de menu de votre menu principal mais aussi depuis un élément de menu de votre menu en pied de page. Dans ce cas Joomla construit l'URL de la page à partir de l'élément de menu. Comparons maintenant 2 exemples :
- Si vous avez un menu nommé Produits, avec un sous élément de menu pour chacun de ces produits, l'URL de l'article Chaise sera /index.php/produits/chaise
- Si ce même article est accessible directement depuis votre menu en pied de page sans que ce soit un sous élément de menu, l'URL sera /index.php/chaise
Mise à part des éléments comme le fil d'ariane ou l'assignement de certains modules, ces pages sont identiques, et rentrent complètement dans la problématique des URLs dupliquées. Ce qui provient en partie de la façon dont Joomla fonctionne, mais il y a des solutions dans la plupart des cas :
- Parfois le menu principal est répété en pied de page. Si c'est le cas et à partir du moment ou il exactement identique, il vous suffit simplement de le publier aussi dans la position pied de page de votre template, mais ne récréé pas un nouveau menu avec des liens identiques.
- Il est assez courant d'avoir des éléments de menu de différents menu que l'on souhaite voir pointer vers le même article. Dans ce cas, ne recréé pas un nouveau lien de menu de type "article" mais un lien de menu de type "Alias de menu" (rubrique lien divers). Ce qui aura pour effet de reprendre l'URL originale du sous élément de menu vers lequel pointe cet alias, ainsi il n'y aura pas de nouvelles URLs de créées!
Créer des redirections 301
Toute personne qui s'intéresse sérieusement au référencement devra tôt ou tard travailler avec des redirections : elles sont souvent nécessaires pour résoudre de petits problèmes, mais parfois vous devrez les appliquer massivement, par exemple, après une refonte du site ou un transfert vers un autre domaine.
L'utilisation de redirections 301 signifie que vous indiquez à toute personne qui accède à une telle URL : Ce lien a été déplacé de façon permanente (le 301 est utilisé à cet effet), veuillez aller ici. Vous pouvez les utiliser pour rediriger le trafic des URL dupliquées vers les URL correctes. Par exemple : si quelqu'un se rend sur :
https://joomlaseo.com/index.php?option=com_content&Itemid=125&catid=15&id=18&lang=en&view=article
il est redirigé vers
https://joomlaseo.com/Checklist/avoid-duplicate-url-s
Vous pouvez créer des redirections 301 soit dans votre fichier .htaccess, soit en utilisant une extension, comme 4SEO, qui est une extension très simple à utiliser. Pour en savoir plus sur les redirections 301 et sur la manière de configurer le fichier .htaccess, consultez l'article sur le rediriger ses vielles URLs.
Il existe d'autres types de redirections, mais elles ne sont utilisées que dans des cas spécifiques. Un exemple est la redirection 302, qui est une redirection temporaire.
URLs canoniques
La définition d'une URL canonique (canonical) peut être la solution pour indiquer à Google que, même s'il existe plusieurs URL pour le même contenu, il n'y a qu'une seule variante qui doit être indexée. Vous interprétez une url "canonique" comme une URL "préférée". Si vous définissez correctement l'URL canonique, tous les duplicatas possibles d'une page Joomla auront le bon HTML dans la section head, pointant vers la version préférée. Prenons l'exemple de la page que vous consultez actuellement. Elle est accessible de deux façons :
/index.php?option=com_content&Itemid=125&catid=15&id=18&lang=en&view=article
/checklist/avoid-duplicate-url-s
La première URL a une URL canonique (canonical) qui indiquera à Google qu'il s'agit de la même page que l'URL SEF, il suffit de vérifier le code HTML de la section <head> :
<link href="https://joomlaseo.com/checklist/avoid-duplicate-url-s" rel="canonical"/>
En utilisant cette technique, vous indiquerez à Google de ne pas indexer le Urls dupliquées, même si elles restent toujours accessibles.
Actuellement, dans Joomla, les balises canoniques sont à peine supportées, selon moi c' est l'un des plus gros problèmes de référencement de Joomla. Dans Joomla, il n'y a pas grand chose que vous puissiez configurer à propos des URLs canoniques. La seule option que vous pouvez définir dans Joomla se trouve dans les paramètres du plugin Système - SEF. Il vous permet de définir un Domaine du site. Cependant cela ne vous sera utile uniquement si vous définissez votre site comme accessible depuis de multiples domaines, en vous permettant de définir le domaine canonique.
Si vous avez besoin de définir des URLs canoniques (et que vous savez ce que vous faites), vous devriez utiliser une extension. Celle que je préfère pour créer une configuration canonique correcte dans Joomla est l'extension 4SEO. D'emblée, elle crée une configuration canonique correcte. Par défaut, les URLS canoniques (canonicals) auto-référencées (link to self) sont exclus, mais vous pouvez facilement l'activer dans les paramètres des Pages:
Définir des régles avancées dans le .htaccess
En utilisant le fichier .htaccess de Joomla, vous pouvez résoudre un grand nombre de vos problèmes de duplication d'URLs (à condition que la réécriture d'URL soit activée). Nous avons déjà discuté de la façon de de rediriger les URLs www et non-www et de créer des redirections 301, mais vous pouvez également l'utiliser pour vous débarrasser de nombreux autres types de problèmes. Un exemple : supposons que vos URLs soient accessibles à la fois avec et sans trailing slash, ce qui signifie que /page1/ et /page1 ont le même contenu. Vous pouvez rediriger en masse la version avec le trailing slash vers la version sans trailing slash , en utilisant ce code :
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ http://%{HTTP_HOST}/ [R=301,L]
Là encore, vérifiez que le trailing slash est bien supprimée ET que votre site fonctionne toujours ! Soyez toujours prudent avec les modifications apportées au fichier .htaccess ! Des problèmes similaires peuvent survenir en raison d'auters paramètres, comme la définition d'une taille de police, ce qui peut amener Google à penser qu'il existe deux pages différentes :
- /contact.php
- /contact.php?font-size=larger
Pour ce type de solutions, je vais souvent sur les forums de Stackexchange , où l'on trouve beaucoup d'informations utiles.
Utiliser le fichier robots.txt (déconseillé)
Note : il s'agit d'une technique utilisée auparavant, qui n'est plus conseillée : Vous pouvez configurer votre fichier robots.txt de manière à ce qu'il interdise l'indexation de toute URL contenant une "query string", c'est-à-dire un " ?", voir l' article sur robots.txt pour le code. Cela permet d'éviter : les problèmes de duplication d'URL en raison d'URLs non SEF, mais les problèmes de "query strings", comme celle-ci :
- /contact.php
- /contact.php?font-size=larger
La raison pour laquelle cette technique n'est plus conseillée est que vous bloquez simplement l'accès aux robots de Google, mais Google voit bien qu'une URL est là. Il ne peut plus juger s'il s'agit d'une URL valide ou non et pourrait simplement indexer la page, ce qui n'est pas ce que vous souhaitez.
Utiliser une extension
Pour de petits sites, ces problèmes peuvent être facilement résolus en configurant son .hatccess ou son robots.txt et en utilisant une petite extension pour créer les redirections 301, mais pour des sites plus gros utiliser une extension SEF est probablement plus efficace.
Comme cela prends du temps à s'habituer à ce type d'extensions, tester vous sur un site de moindre importance. Si elle est bien utilisée elle éradiquera tous les problèmes d'URLs dupliquées de votre site. Mais si elle est mal utilisée elle pourrait produire l'effet inverse.
Voici quelques extensions SEF bien connues :
- 4SEO by Weeblr
- PWT SEO
- Route66 by Firecoders
- RS-SEO
Consultez la section extension pour plus d'informations sur ces extensions et quelques autres.
Google Search Console
Veillez toujours à enregistrer votre site dans la Search Console de Google. Cela ne résoudra pas vos problèmes à votre place, mais vous recevrez des informations sur l'état de votre site, notamment sur les problèmes de contenu dupliqué et la configuration de vos URL canoniques.
Cet article est une traduction libre du tutoriel de Simon Kloostra : Avoid duplicate content issues