
Lorsque l’on crée une composition avec l’éditeur Gutenberg, plusieurs solutions s’offrent à nous :
- Créer une composition « normale », c’est-à-dire un agencement de blocs enregistré en base de données avec leur contenu, qu’on peut ensuite appeler sur n’importe quelle page. On est ensuite libre de modifier ou non ce contenu, mais chaque occurrence de la composition est indépendante des autres, et elle est totalement intégrée au contenu de la page en cours d’édition.
- Créer une composition « synchronisée » : c’est une composition où les blocs, leur mise en forme et leur contenu, sont totalement synchronisés sur toutes les occurrences de la composition sur le site. Toute modification des blocs de la composition se fera sur toutes les pages où celle-ci est utilisée.
À noter : les compositions synchronisées et les blocs réutilisables, c’est la même chose !
L’ancienne terminologie « bloc réutilisable » a été abandonnée au profit de « composition synchronisée » lors de la sortie de WordPress 6.3 [1].
Ce qu’il faut savoir, c’est que si les compositions synchronisées sont très utiles pour ne pas avoir à modifier chaque occurence d’une composition de blocs qui serait utilisée sur plusieurs pages, elles présentent aussi un inconvénient majeur : le contenu d’une composition synchronisée n’appartient pas réellement à la page.
Il s’agit en réalité d’un appel de contenu. Un peu comme dans une page d’archive d’actualités : les articles qui remontent dans la liste ne font pas réellement partie du contenu de la page, c’est totalement dynamique.
Le contenu d’une composition synchronisée est virtuel : ce n’est qu’un identifiant pointant vers un contenu externe à la page.
La 2ème capture montre le code HTML de cette page tel qu’il est enregistré en base de données.
On observe que dans le code source de la page, le contenu textuel de la composition n’apparait pas : on retrouve simplement un appel dynamique à l’identifiant de la composition.
(cliquer sur les images pour les agrandir dans un nouvel onglet)
La logique de synchronisation des compositions de blocs Gutenberg dans WordPress
Techniquement, cette problématique est liée au mode de fonctionnement des compositions : dès lors qu’elles sont synchronisées, le contenu n’appartient plus à la page, c’est juste une remontée d’un contenu tiers totalement virtuel, enregistré dans le CPT wp_block
[2].
Ainsi, si vous avez une composition synchonisée dans votre page, son contenu textuel sera ignoré par de nombreux éléments de WordPress qui interagissent habituellement avec le contenu :
- Le texte de la composition ne sera pas utilisé pour générer l’extrait de la publication : la fonction
the_excerpt()
n’en tient pas compte. - Son texte ne remontera pas dans Yoast (ou autre extension SEO), par exemple pour générer la méta description de la page.
- Son texte n’apparaitra pas non plus dans les partages sur les réseaux sociaux.
- Le moteur de recherche du site ne tiendra pas compte du contenu de la composition lors de la recherche des mots-clés demandés.
- Si vous utilisez une extension ou un bout de code estimant le temps de lecture de la page, le calcul ne tiendra pas compte du contenu de la compo.
Pour WordPress, le contenu d’une composition synchronisée n’appartient tout simplement pas à la page dans laquelle il est inséré.
Pas de vrai risque SEO si les compositions de blocs sont bien utilisées
Les moteurs d’indexation comme Google ou n’importe quel moteur IA prennent en compte le HTML généré in fine dans la page. Pour eux la composition fait donc bien partie de la page puisqu’elle est chargé en front au même titre que le reste du contenu. Ouf !
Le seul risque SEO éventuel d’une composition synchronisée, c’est le risque de contenu dupliqué, mais celui se pose dès lors que l’on répète des blocs de contenus similaires d’une page à l’autre.
Parfois ça peut être adapté, notamment pour des éléments qu’on retrouvre systématiquement en pied d’article comme par exemple un call to action d’inscription à une newsletter.
Si l’on se fiche qu’il ne soit pas considéré comme faisant partie des contenus de la page, qu’il s’agit d’un contenu transverse comme pourrait l’être l’entête ou le pied de page du site, alors l’usage d’une composition syncronisée peut alors être envisagé.
Mais attention à bien anticiper les conséquences en amont…
Un risque à anticiper au cas par cas
Avec les collègues de l’agence Whodunit, nous avons rencontré sur un projet récent l’exemple d’un chapo qui était géré via une composition synchronisée avec surcharge possible du contenu. Car oui, le problème concerne aussi les compos synchronisées avec surcharge [3].
Malheureusement, le texte saisi dans la composition n’était pas utilisé pour l’extrait de contenu affiché sur les pages d’archives et dans la méta description.
Il a donc fallu repasser manuellement sur tous les contenus du site pour refaire ce chapo afin qu’il soit réellement intégré à la page, à l’aide d’une composition non synchronisée. Un travail pas forcément anticipé.
Conclusion : il faut être sûr de soi lorsque l’on utilise une composition synchronisée, et mieux vaut souvent éviter de les utiliser en début de contenu.
La possibilité de détacher une composition synchronisée après insertion
Il faut noter qu’il est toujours possible de « détacher » une composition synchronisée après l’avoir insérée.
Cela a pour effet de la transformer en composition non synchronisée dont le contenu appartient entièrement à la page en cours d’édition [4].
Par défaut, mieux vaut utiliser des compositions non synchronisées.
Pour les quelques cas où on sait que le composant s’y prête vraiment, on peut utiliser des compos synchronisées, en ayant bien en tête que leur contenu n’appartiendra à la page que virtuellement.
Des précisions à ajouter dans la documentation officielle de WordPress
Cette différence fondamentale entre compositions Gutenberg « synchronisées » et « non synchronisées » n’apparait à ce jour jamais vraiment dans la documentation officielle de WordPress [5]. Outre cet article, je vais dont également ajouter un encart expliquant ces inconvénients potentiels sur la doc.
Notes et références
- [1] Pour en savoir plus sur ce renommage, consulter la pull request correspondante sur le dépôt GitHub du projet Gutenberg (en anglais).
- [2] Voir la déclaration du type de publication
wp_block
dans le code source de WordPress (en anglais). - [3] Il s’agit d’un mécanisme un peu plus technique : cet article (en anglais) explique le principe des compositions synchronisées avec surcharge.
- [4] Voir la section « Détacher une composition synchronisée » sur la documentation de WordPress en français.
- [5] Voir la page « Différencier les compositions synchronisées et non synchronisées » sur la documentation de référence de WP en français.
Laisser un commentaire