Comment gérer les contenus / URL dupliqués dans Joomla?

11

Je viens de découvrir un problème de référencement majeur et bien que je l'ai résolu pour le moment; J'essaie de comprendre pourquoi cela a pu se produire en premier lieu et s'il y a eu une erreur ou est-ce quelque chose à voir avec Joomla lui-même. D'abord le problème:

Lorsque j'ai exploré un site avec Moz, il a montré quatre contenus en double pour la page d'accueil, ce qui était inattendu. Ainsi, par exemple, pour la page d'accueil http://www.foo.com, elle affichait des URL de contenu en double comme suit:

foo.com/2-uncategorised/1-offers (canonical = foo.com/2-uncategorised/1-offers)
foo.com/2-uncategorised/2-enquiry (canonical = foo.com/2-uncategorised/2-enquiry) 
foo.com/2-uncategorised/3-products (canonical = foo.com/2-uncategorised/3-products) 

Et tous ces liens chargeaient simplement le contenu de la page d'accueil, mais les méta-détails provenaient de l'article. Cela indiquait évidemment que Joomla créait automatiquement les liens et j'ai trouvé la même chose pour les 4 liens. Le lien dans l'article était comme ceci:

index.php?option=com_content&view=article&id=1&catid=2&Itemid=1
index.php?option=com_content&view=article&id=2&catid=2&Itemid=1
index.php?option=com_content&view=article&id=3&catid=2&Itemid=1

Le Itemid = 1correspond à l'élément de menu de la page d'accueil qui explique pourquoi la page d'accueil était en cours de chargement. J'ai essayé de recréer le problème, mais je n'ai pas pu. Selon les personnes qui ont ajouté le contenu, voici les étapes à suivre lors de la création de ces articles et liens en son sein:

  1. Créer des articles
  2. Ajoutez un lien vers d'autres articles en utilisant l'onglet «Article» dans l'éditeur de contenu.
  3. Créer un élément de menu pour les articles

Je me demandais donc s'il y avait manifestement quelque chose qui clochait. Je suis confus car il y a plus de 100 articles, mais cela n'est arrivé que dans environ 5 articles. Merci.

sifu
la source

Réponses:

15

TOC de cette réponse:

  1. Contenu sous le même ID d'élément
  2. Comment le contenu en double est créé / Pages dynamiques / URL
  3. Perspective SEO
  4. Traiter le contenu en double dans Joomla
  5. Références et liens

1. Pourquoi les articles sont affichés sous le même itemid

Tout d'abord, ce n'est pas le problème pour lequel vous obtenez des URL en double. Les articles utilisent l'ID d'élément de la page d'accueil, car aucun autre ID d'élément ne leur est attribué.

En savoir plus à ce sujet:

Et celui-ci pourrait également être perspicace:



2. Comment est créé le "contenu en double" / Pages dynamiques / URL

Il s'agit en fait d'un comportement standard pour les sites Web dynamiques qui génèrent leurs pages en utilisant des paramètres d'URL pour construire des chaînes de requête sous la forme de paires champ-valeur . Le serveur / l'application recevra la requête, la traitera et retournera le contenu associatif au navigateur.

Pour mieux comprendre cela, vous pouvez désactiver les URL SEF dans un site Web Joomla et étudier un peu l'URL non SEF d'une page:

Exemple:

index.php? option = com_content & view = article & id = 3 & catid = 9 & Itemid = 101

En divisant la requête ci-dessus en paires champs-valeurs, nous voyons:

  • option = com_content
  • voir = article
  • id = 3
  • catid = 9
  • Itemid = 101

Ce sont des valeurs de champs que Joomla comprend et essaiera de renvoyer le contenu suivant en tant que:

Il interrogera le composant com_content et utilisera une vue d'article pour afficher l'élément de contenu (article) avec l'ID 3, de la catégorie ID 9, en utilisant l'élément de menu avec l'ID 101.


De nombreuses variantes d'URL pour 1 page

Cependant, le même article peut être affiché avec encore plus de combinaisons champs-valeurs:

Certaines combinaisons possibles pourraient être:

  • index.php? option = com_content & view = article & id = 3 & catid = 9
  • index.php? option = com_content & view = article & id = 3 & Itemid = 101
  • index.php? option = com_content & view = article & id = 3 & Itemid = 102
  • index.php? option = com_content & view = article & id = 3 & Itemid = 103
  • index.php? option = com_content & view = article & id = 3
  • index.php? option = com_content & view = article & id = 3 & lang = fr
  • index.php? option = com_content & view = article & id = 3 & catid = 9 & Itemid = 101 & lang = fr

  • index.php? option = com_content & view = article & id = 3 & catid = 9 & Itemid = 101 & lang = en & print = 1

  • index.php? option = com_content & view = article & id = 3 & catid = 9 & Itemid = 101 & lang = en & tmpl = composant

Comme vous pouvez le voir, tout ce qui précède demande les mêmes données au système, qui est l'article avec id = 3. Cela conduit au fait que le même contenu / page peut être accédé via différentes URL et dans certains cas peut être affiché dans différentes dispositions.

* Avec les URL SEF activées dans Joomla, ce qui précède pourrait potentiellement se traduire par plus d'une URL SEF pour le même article / contenu.



3. La perspective SEO

Les moteurs de recherche modernes et Google en particulier, sont conscients de ce comportement. Habituellement, ils feront de leur mieux pour indexer et conserver dans leurs résultats de recherche l'URL la plus appropriée pour une page. De plus, Google a révélé qu'il n'y a aucune " pénalité " réelle pour le contenu dupliqué à cause de cela.

Cependant, le principal problème dans le cas où le même contenu / la même page a été indexé plus d'une fois, c'est que vous perdez peut-être le classement des pages et les meilleures performances SEO possibles , car le classement des pages sera divisé en plus d'une page au lieu de 1. .

Dans cet esprit, il est sage de traiter cela, au lieu de laisser les moteurs de recherche indexer les URL tout en essayant de deviner si différentes URL affichent le même contenu ou un contenu différent.
De plus, contrôler vos URL et ce que SE doit indexer peut vous aider à produire une meilleure expérience utilisateur dans son ensemble, car les utilisateurs du site trouveront la même page sous 1 seule URL standard, et cela peut produire une structure plus solide pour un site Web et sa gestion. .



4. Comment gérer le contenu en double

  • Utilisation d'URL canoniques pour vos pages.
    Les URL canoniques indiqueront au moteur de recherche quelle est supposée l'URL correcte d'une page à explorer et à conserver dans leur index.

  • À l'aide d'INDEX / NOINDEX, suivez les métadonnées FOLLOW / NOFOLLOW. L'utilisation de telles métadonnées dans vos pages indiquera aux moteurs de recherche si vous souhaitez qu'ils indexent ou non le contenu d'une page et qu'ils suivent ou non les liens qui s'y trouvent.

  • Utilisation de 301 redirections / htaccess.
    Vous pouvez rediriger toutes les autres URL vers celle que vous souhaitez sur le site principal. Cela peut être réalisé avec les extensions SEF ou htaccess . Les deux fournissent une grande puissance, mais htaccess a une grande flexibilité compte tenu de la possibilité d'utiliser des expressions régulières pour toutes sortes de redirections / ou réécritures en utilisant le mod_rewrite. Concernant les extensions J, lorsque le besoin s'en fait sentir, j'utilise généralement sh404SEF .

    Mise à jour: Comme @Neil Robertson l'a noté dans les commentaires: une redirection importante est de la version non www du site Web vers la version www du site Web ou vice versa. Ajoutez ceci au fichier .htaccess pour la redirection non www vers www.

        ### Redirect non-www to www
        RewriteCond %{HTTP_HOST} !^www\. [NC]
        RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
        ### Redirect non-www to www - END 
    
  • Utilisation des outils
    Google Webmasters Les outils Google Webmasters comportent des options permettant d'ajuster le comportement du robot avec vos paramètres d'URL .

  • Utilisation des plans Sitemap
    Envoyez aux moteurs de recherche la structure d'URL de votre site.

  • Utilisation du fichier Robots.txt
    Google et les autres SE majeurs respectent votre Robots.txt. Vous pouvez leur demander de ne pas analyser des répertoires / chemins d’URL spécifiques.

Toutes les options ci-dessus peuvent être combinées afin de produire le résultat souhaité.

* Comme partout, donc dans Joomla, une bonne planification et une bonne organisation du contenu aident toujours à atteindre un meilleur résultat. Surtout avec Joomla, cela implique également une catégorisation claire du contenu et une structure des éléments de menu.



5. Références et liens

Extensions SEO Joomla

Habituellement, dans Joomla, si vous voulez gérer cela efficacement, vous finirez par installer une extension SEO-SEF tierce.



Plus de lecture:

FFrewin
la source
1
l'une des meilleures réponses sur ce forum :) très utile. merci @FFrewin
Joomler
1
Ceci est une excellente réponse. :) Pour être complet, il peut être utile d'ajouter des informations sur la redirection de la version non www du site Web vers la version www du site Web ou vice versa. Ceci est souvent oublié mais est probablement la principale cause de contenu en double sur tous les sites Web (pas seulement Joomla).
Neil Robertson
Il semble que le nouveau routeur verra enfin le jour dans Joomla 3.8 et cela aidera à simplifier les URL sans avoir besoin d'une extension tierce.
Neil Robertson
1
@NeilRobertson: Je pense toujours qu'il y a encore place à amélioration et plus de travail est nécessaire à ce sujet pour une solution complète et efficace de gestion des URL / doublons SEF sur Joomla.
FFrewin
@FFrewin, je suis d'accord. Il semble que certaines extensions tierces doivent également être mises à jour pour tirer parti du nouveau routeur.
Neil Robertson
0

Si j'ai plusieurs éléments de menu vers le même contenu, j'utilise les liens système / alias d'élément de menu situés dans le gestionnaire de menus. Voici un vieil article à ce sujet; mais la méthode existe toujours aujourd'hui: https://magazine.joomla.org/issues/issue-apr-2016/item/2997-avoid-duplicate-content-with-a-menu-item-alias

@Neil, je suis d'accord à 100% sur le fait que le contenu non www vs www soit lu en double. Voici le code qui force www à être non-www. Placez-le dans votre fichier htaccess. En outre, il ajoute également le protocole de sécurité https. Ce code n'est pas la seule méthode, mais c'est ce que j'utilise avec succès sur de nombreux sites.

RewriteCond %{HTTP_HOST} ^www.yourwebsite.com [NC]
RewriteRule ^(.*)$ https://yourwebsite.com/$1 [L,R=301]
yaya
la source