Publié le

Utiliser un champ comme titre de page avec le module Metatag de Drupal

Pour un référencement naturel efficace, le titre d'une page peut-être un des éléments à optimiser afin de cibler certaines requêtes ou simplement pour donner plus d'informations aux moteurs de recherches quant au contenu présent sur une page.

Pour ce site, j'ai créé une taxonomie Technologies dans le but de communiquer avec de potentiels prospects la palette de services que je propose. Ces technologies étant référencées partout ailleurs sur le site, il faisait sens d'utiliser leur nom comme titre de page afin de pouvoir l'afficher dans les listes, les tooltips, la recherche, etc.

Créer un nouveau champ Title

Seulement voilà, en titrant ma page Drupal (par exemple), ni les moteurs de recherche ni les utilisateurs ne comprennent qu'il s'agit d'une page qui présente mes compétences et non d'une page générique présentant Drupal en tant que tel.

J'ai donc créé un nouveau champ Title associé à ce terme de taxonomie en plus du champ Name créé par défaut. Ce champ Title sera le titre h1 affiché comme titre de page.

Ce champ Title est ensuite utilisé dans les templates Twig en lieu et place du champ Name initial.

<h1>{{ content.field_technology_title }}</h1>

Changer le titre de la page dans le head

Pour parfaire cette implémentation, j'ai également changé le titre de la page via le module Metatag en utilisant un token du type [term:field_title] dans le champ titre.

Grâce à ce changement :

  • Mes urls sont propres (comme /technologies/drupal par exemple)
  • Je peux référencer les technologies ailleurs sur le site et n'afficher que leur nom (en haut de cette page par exemple)
  • Je peux définir un titre de page SEO-Friendly comme Développeur expert Drupal à Strasbourg qui s'affiche correctement sur la page, dans la balise head grâce au module Metatag et donc dans l'onglet de la page.