Pagination et Indexation Google => Hook replaceInsertTags

Questions, astuces, à propos de l'accessibilité et de l'optimisation pour les moteur de recherche (SEO)
Avatar de l’utilisateur
F2lt
Membre
Messages : 164
Inscription : 26 Mai 2011 09:24
Localisation : L'Isle sur Sorgue - Vaucluse (84)

Pagination et Indexation Google => Hook replaceInsertTags

Messagepar F2lt » 10 Août 2012 13:52

Suite aux remarques et informations de tom-over sur mon sujet précédent (Indexation Pagination => Ajouter le n° de Page dans le Titre) j'ai décidé d'essayer d'inclure des balises <link rel="prev...> et <link rel="next...> dans mes pages.

Pour ce faire, j'ai décidé de me "lancer" en créant mes propres balises d'insertion à l'aide du hook replaceInsertTags de Contao.

Il faut :
1. Récupérer les liens dans le template de la pagination en ajoutant dans le test correspondant :

Code : Tout sélectionner

 * /templates/pagination.tpl
...
<?php $GLOBALS['F2']['LINK_REL_PREV']=$this->previous['href']; ?>
...
<?php $GLOBALS['F2']['LINK_REL_NEXT']=$this->next['href']; ?>
...

2. Créer un "pseudo module" de Contao chargé de traiter les tags d'insertion non standard :

Code : Tout sélectionner

 * /system/modules/f2/config/config.php
$GLOBALS['TL_HOOKS']['replaceInsertTags'][] = array('F2Hooks', 'f2ReplaceInsertTags');

Code : Tout sélectionner

* /system/modules/f2/F2Hooks.php
<?php
class F2Hooks  {
  public function f2ReplaceInsertTags($strTag) {
    switch ($strTag) {
      case 'f2::link_rel_prev': // {{f2::link_rel_prev}}
        if ($GLOBALS['f2']['LINK_REL_PREV'])
          return '<link rel="next" href="'.$GLOBALS['f2']['LINK_REL_PREV'].'" />';
        else
          return false;
      case 'f2::link_rel_next': // {{f2::link_rel_next}}
        if ($GLOBALS['f2']['LINK_REL_NEXT'])
          return '<link rel="next" href="'.$GLOBALS['f2']['LINK_REL_NEXT'].'" />';
        else
          return false;
      case 'f2::title_pagination_page_number': // {{f2::title_pagination_page_number}}
         if (isset($_GET['page']))
          return ' - Page n°'.$_GET['page'];
         else
          return false;

      default:
       return false;
    }
  }
}
?>

3. Modifier le modèle de page pour y insérer les nouvelles balises :

Code : Tout sélectionner

 * /templates/fe_page.tpl
<head>
<title><?php echo $this->pageTitle; ?> - <?php echo $this->mainTitle; ?>{{f2::title_pagination_page_number}}</title>
{{f2::link_rel_prev}}
{{f2::link_rel_next}}
...
</head>

Et ça marche :D

Bon, j'espère que Google saura récompensé tous ces efforts :P

F2lt
Je soutiens Mira Europe qui éduque et remet gratuitement des chiens guides d'aveugles aux enfants aveugles : http://www.miraeurope.org/

Avatar de l’utilisateur
tom-over
Membre
Messages : 829
Inscription : 23 Mai 2008 10:43
Localisation : Rouen

Re: Pagination et Indexation Google => Hook replaceInsertTag

Messagepar tom-over » 27 Août 2012 10:21

Excellent boulot F2lt ! !

Je vais tester ça prochainement :D

PS : as tu testé le chargement progressif en fonction du scroll (façon Facebook) ?

Noah
Membre
Messages : 13
Inscription : 11 Sep 2012 16:31
Localisation : Hérault

Re: Pagination et Indexation Google => Hook replaceInsertTag

Messagepar Noah » 12 Sep 2012 12:22

Bonjour,

je me demande (je débute) si ce n'est pas plus simple de faire une condition et d'empêcher les moteurs de recherche d'indexer les pages paginées avec une meta robots du genre "noindex, follow", et d'y placer la balise "canonical" pointant vers la première page non paginée ?

je ne sais pas si j'ai été très clair ? 8)

Avatar de l’utilisateur
tom-over
Membre
Messages : 829
Inscription : 23 Mai 2008 10:43
Localisation : Rouen

Re: Pagination et Indexation Google => Hook replaceInsertTag

Messagepar tom-over » 12 Sep 2012 13:25

Donc tes pages 2, 3, 4, ... et les pages associées ne seront pas trouvables sur les moteurs de recherche !!
Par très logique ! le but est de référencer un site entier afin que les internautes puisse trouver les pages répondant à leurs besoins en effectuant une requête ! :wink:

Noah
Membre
Messages : 13
Inscription : 11 Sep 2012 16:31
Localisation : Hérault

Re: Pagination et Indexation Google => Hook replaceInsertTag

Messagepar Noah » 12 Sep 2012 14:20

Salut tom-over ,

je ne vois pas où est la pertinence de référencer des pages de produits paginées, hormis le risque de générer du duplicate content.
Plutôt mettre l'accent sur une optimisation des fiches produits ou sur les articles par exemple, amha.
Le cas échéant, équiper le site d'un moteur de recherche bien visible pour permettre aux visiteurs de trouver l'info recherchée, et pourquoi proposer en plus un plan du site détaillé de chaque page, ou du moins de chaque catégorie et sous catégorie.

Non ? :)

Avatar de l’utilisateur
tom-over
Membre
Messages : 829
Inscription : 23 Mai 2008 10:43
Localisation : Rouen

Re: Pagination et Indexation Google => Hook replaceInsertTag

Messagepar tom-over » 13 Sep 2012 09:27

Noah a écrit :je ne vois pas où est la pertinence de référencer des pages de produits paginées, hormis le risque de générer du duplicate content.

Justement avec cette méthode il n'y a pas de risque de créer du duplicate content. Alors qu'avant les contenus paginés avec Contao pouvaient être considérés "duplicate content" par Google puisqu'il y avait la même balise <Title>

Cette méthode est préconisé par Google... :wink:
http://www.abondance.com/actualites/201 ... istes.html

L'un n'empêche pas l'autre ! Évidement que la première chose à faire est d'optimiser :
- les fiches produits ou les articles.
- le netlinking interne de ton site.
- l'arborescence du site.

Noah
Membre
Messages : 13
Inscription : 11 Sep 2012 16:31
Localisation : Hérault

Re: Pagination et Indexation Google => Hook replaceInsertTag

Messagepar Noah » 13 Sep 2012 10:58

Hello tom-over,

en fait nous avons trouvé un compromis : optimiser les title de chaque page tout en faisant en sorte de ne pas indexer les pages paginées.

Un site internet au top et taillé pour ranker :)

Avatar de l’utilisateur
F2lt
Membre
Messages : 164
Inscription : 26 Mai 2011 09:24
Localisation : L'Isle sur Sorgue - Vaucluse (84)

Re: Pagination et Indexation Google => Hook replaceInsertTag

Messagepar F2lt » 23 Sep 2012 03:34

Bonjour,

J'ai été pas mal occupé depuis la rentrée (l'heure de ma réponse en témoigne) mais il n'est jamais trop tard pour bien faire donc :

@tom-over : Heureux que ma solution te plaise :) , je n'ai pas testé la solution "type facebook", je m'en tiens à du classique pour le référencement. Le site sera bientôt en production donc on verra ce que Google "en pense". :roll:

@Noah : Penses tu qu'il vaut mieux avoir une seule page qui présentent par exemple 10 casques de motos (différents) ou 5 pages qui présentent chacune 10 casques soit 5 x 10 = 50 casques de motos (différents) pour être mieux positionner sur la requête Google "casque moto" :?:
Je soutiens Mira Europe qui éduque et remet gratuitement des chiens guides d'aveugles aux enfants aveugles : http://www.miraeurope.org/

Avatar de l’utilisateur
audrey
Membre
Messages : 282
Inscription : 07 Mars 2011 09:09
Localisation : Perpignan
Contact :

Re: Pagination et Indexation Google => Hook replaceInsertTag

Messagepar audrey » 11 Avr 2013 11:00

Je réponds encore quelques 2 saisons après !
J'ai eu l'occasion aujourd'hui d'avoir recours à cette solution, alors MERCI F2lt :D !

Par contre, dans un soucis de jusqu_au_bout_du_detail, j'ai crée une globale pour récupérer le total du nombre de pages et pouvoir mettre dans le title "Page 1 de 4".

FiX'
Membre
Messages : 399
Inscription : 02 Jan 2009 01:04

Re: Pagination et Indexation Google => Hook replaceInsertTag

Messagepar FiX' » 13 Avr 2013 17:11

Hello,

Intéressante cette solution... à tester.

Cependant, je n'ai jamais réussi à utiliser le module pagination. Et pourtant je connais très bien Contao.

D'ailleurs, il semblerait que je ne suis pas le seul à rencontrer des soucis... comme le prouve ce post créé par taskone.

J'y ai participé... aucune aide :? > utilisation/pagination-impossible-mettre-place-utiliser-t2690.html

tom-over a écrit :[...]Alors qu'avant les contenus paginés avec Contao pouvaient être considérés "duplicate content" par Google puisqu'il y avait la même balise <Title>

Mouais...

Ce qui va permettre à une page d'être bien positionnée, c'est un ensemble de règles (je simplifie) : ainsi il faut donner un bon titre (balise title), créer un bon contenu (pyramide inversé) et coder correctement l'ensemble (h1, p, ul/li, ...), etc...

Les moteurs de recherches vont analyser ces informations et essayer d'en comprendre le sens. Si la page n'a pas de sens, la page sera peu ou mal référencée.

Donc, par rapport à ce qui a été dit... je ne suis pas convaincu de la pertinence d'ajouter le numéro de page pour les pages qui fonctionnent avec un système de pagination / moteur de recherches interne. Je ne pense pas que cela va permettre aux moteurs de recherches de comprendre le contenu / sens de la page.

Pourquoi ? :

- Ce type de page est - souvent - composée d'un contenu totalement hétéroclite et très (trop ?) varié.

- Le contenu est souvent tronqué ou limité.

- La proportion 70/30 n'est pas forcément respectée.

- D'un point de vue utilisateur, il vaut mieux que celui-ci tombe directement sur la page d'un produit (ne pas oublier le fil d'ariane si la structure du site est complexe, cela permettra au visiteur de mieux se repérer / agir)... plutôt que sur une page montrant des résultats de recherches. Quelle frustration pour le visiteur : il quitte un moteur de recherches pour retomber sur des résultats de recherches !

Donc, sincèrement, je ne pense pas que le simple fait d'ajouter le n° de la page dans la balise title va permettre aux moteurs de recherches de mieux référencer ces pages là. De façon, générale j'applique un noindex/nofollow sur toutes les pages qui ont un lien avec des résultats de recherches (moteur de recherches interne). Je ne vois pas l'intérêt de référencer ces pages. Il n'y a pas non plus d'intérêt à mettre un canonical étant donné que ces pages ne seront jamais référencées sur Google (et autres...).

Pour conclure, je pense que l'ajout link prev/next + changement de titre (+ voire canonical) peut avoir un intérêt sur le contenu d'un article / actualité à forte valeur ajoutée (ex: dossier, reportage, etc...)... mais certainement pas sur des pages de résultats de recherches.

tom-over a écrit :le but est de référencer un site entier [...]

Non ! Sinon les meta noindex/nofollow et fichiers robots / sitemap / ... n'existeraient pas. Encore heureux, que l'on puisse "choisir" ce qui doit-être indexé et ce qui ne doit pas l'être.

tom-over a écrit :[...] afin que les internautes puisse trouver les pages répondant à leurs besoins en effectuant une requête ! :wink:

Oui ! Raison de plus pour utiliser les techniques qui permettent de cacher certaines infos, et ainsi faire du "référencement utile, pertinent et cohérent pour l’utilisateur."

F2lt a écrit :@Noah : Penses tu qu'il vaut mieux avoir une seule page qui présentent par exemple 10 casques de motos (différents) ou 5 pages qui présentent chacune 10 casques soit 5 x 10 = 50 casques de motos (différents) pour être mieux positionner sur la requête Google "casque moto" :?:

Je pense qu'il y a très peu de chance pour que tu sois bien positionné sur cette requête car trop généraliste.

A+

Avatar de l’utilisateur
F2lt
Membre
Messages : 164
Inscription : 26 Mai 2011 09:24
Localisation : L'Isle sur Sorgue - Vaucluse (84)

Re: Pagination et Indexation Google => Hook replaceInsertTag

Messagepar F2lt » 17 Avr 2013 09:53

Bonjour,

Donc, par rapport à ce qui a été dit... je ne suis pas convaincu de la pertinence d'ajouter le numéro de page pour les pages qui fonctionnent avec un système de pagination / moteur de recherches interne.


L'article ne concerne pas les pages résultats de recherche interne à Contao :roll:

F2lt
Je soutiens Mira Europe qui éduque et remet gratuitement des chiens guides d'aveugles aux enfants aveugles : http://www.miraeurope.org/

FiX'
Membre
Messages : 399
Inscription : 02 Jan 2009 01:04

Re: Pagination et Indexation Google => Hook replaceInsertTag

Messagepar FiX' » 17 Avr 2013 10:13

F2lt a écrit :L'article ne concerne pas les pages résultats de recherche interne à Contao :roll:

Je n'ai jamais dis le contraire.

Les résultats des moteurs de recherches interne, affichent généralement - lorsqu'il y a beaucoup de résultats - un système de pagination.

C'est pour cela que j'ai indiqué, que je ne trouvais pas pertinent d'afficher le n° de page pour ce type de page.

Ainsi le "/" veut dire et/ou...

8)

Avatar de l’utilisateur
tom-over
Membre
Messages : 829
Inscription : 23 Mai 2008 10:43
Localisation : Rouen

Re: Pagination et Indexation Google => Hook replaceInsertTag

Messagepar tom-over » 27 Mai 2013 10:44

FiX' a écrit :
tom-over a écrit :le but est de référencer un site entier [...]

Non ! Sinon les meta noindex/nofollow et fichiers robots / sitemap / ... n'existeraient pas. Encore heureux, que l'on puisse "choisir" ce qui doit-être indexé et ce qui ne doit pas l'être.


LOL évidement que l'on peut choisir d'indexer un page ou pas ! !

Je sous entendais qu'il fallait bien travailler le linking internet pour ne pas avoir de pages perdues ou isolées à cause d'une désindexation des pages paginées. Il ne faut pas sous-estimer ces pages car tu cours le risque d'une chute de certaines pages dans les profondeurs de la SERP...

Car Noah parlait dans son post de désindexer les pages paginées et ça va à l'encontre d'un bon linking interne

Le maillage internet d'un site est très important et joue un rôle dans une stratégie de SEO

FiX'
Membre
Messages : 399
Inscription : 02 Jan 2009 01:04

Re: Pagination et Indexation Google => Hook replaceInsertTag

Messagepar FiX' » 16 Juil 2013 14:03

Je suis tombé là dessus aujourd'hui même... cela confirme bien ce que j'avais dit par rapport à ce sujet : Google interdit l'indexation des pages de résultats d'un moteur de recherche interne (la pagination étant souvent utilisée sur les SERP des moteurs interne).

Image

Info trouvée dans le livre Réussir son référencement web, édition 2012 aux éditions Eyrolles, par Olivier ANDRIEU. À la page n°519.

A+


Revenir vers « Accessibilité et SEO »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité