Balise meta description unique pour vos articles WordPress

WordPress est certainement une des solutions les plus simples pour créer rapidement votre site ou blog, et ce n’est pas pour rien que c’est un des CMS les plus utilisées (60 millions de sites réalisés avec WordPress). Si vous faites un peu attention à votre référencement, vous serez certainement tenté d’installer des plugins pour optimiser vos pages, avec pour inconvénient de tendre rapidement vers l’usine à gaz. C’est donc loin d’être idéal étant donné que la rapidité d’un site est importante.

Logo WordPress

Pour chacune de vos pages, vous désirerez sûrement pouvoir préciser le contenu de votre balise title, idéalement unique et contenant vos mots-clés pour cette page. C’est sans doute une des choses les plus importantes à faire en terme de référencement. Il est important de rappeler que le contenu de cette balise title sera affiché dans les résultats de Google, et qu’il est donc plus intéressant de se limiter à 68 caractères pour que celui-ci s’affiche en entier.

De manière similaire, avoir un contenu unique pour la balise meta description est important. Cela n’aura cependant aucun impact sur votre référencement, mais le contenu de cette balise sera le texte affiché en dessous de votre titre dans les résultats de recherche. Veillez donc à mettre vos mots-clés pour inciter le visiteur à cliquer sur votre lien et pas un autre, tout en vous limitant à environ 160 caractères vu que Google n’en n’affichera pas plus.

En général, la plupart des thèmes pour WordPress afficheront le titre de votre article ou de votre page dans la balise title, et ce sera généralement le résultat que vous voulez obtenir. Je ne vais dès lors pas vous montrer comment le personnaliser davantage. Il suffira juste d’appliquer exactement la même technique que pour la description, que je vous explique tout de suite !

Ajouter la description pour chaque article avec les champs personnalisés

La procédure se découpe en deux étapes. La première est la plus simple, et se fait directement dans votre espace d’administration de WordPress.
A chaque fois que vous créez un article, ajoutez un champ personnalisé portant le nom meta-description. Vous pouvez tout à fait choisir un autre nom, mais sachez que vous devrez toujours utiliser le même (et pensez alors à adapter le code à l’étape 2). La première fois, cliquez sur ‘Saisissez-en un nouveau’ et entrez le nom de champ. Les fois suivante, le nom apparaîtra dans la liste déroulante, vous n’aurez alors plus qu’à le sélectionner.
La valeur de ce champ sera tout simplement le contenu que vous voulez donner à votre balise meta description.

Champs personalisés WordPress

Précisons tout de même que cette petite amélioration SEO sera facultative pour chacun de vos articles. Vous pourrez ou non proposer une description. Si vous n’en proposez pas, vous pourrez en mettre une par défaut, ou ne pas en mettre du tout. Google se chargera alors d’en créer une sur base de votre contenu.

On peut donc passer à la deuxième et dernière étape.

Mettre les mains dans le code

Il va falloir aller modifier votre thème pour qu’il prenne en compte la description que vous avez indiquée pour chaque article. Cela va se faire dans le fichier header.php de votre thème. Ici, vous avez deux solutions:

  • Modifier à l’arrache: Modifiez simplement votre fichier sans vous soucier de quoique ce soit. Tout devrait fonctionner correctement si vous ne faites pas de boulette. Par contre, vos modifications seront écrasées si vous faites une mise à jour de votre thème par après.
  • Créer un thème enfant: Méthode un peu plus propre qui permettra de faire la mise à jour de votre thème sans perdre les modifications que vous avez pu faire dans ses fichiers. Plus d’info sur la création de thème enfant directement dans la doc WordPress.

Dans votre fichier header.php, vous devriez voir du code ressemblant d’assez près à ceci:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html <?php language_attributes(); ?>>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php bloginfo('charset'); ?>" />
<title><?php echo trim($sTitle); ?></title>

Juste avant le Doctype, nous allons ajouter un peu de code PHP pour récupérer le contenu de la balise description pour l’article ou la page affichée.

<?php
if (is_single() || is_page()) // Si c'est un article ou une page
    $metaDescription = get_post_meta((int)$post->ID, 'meta-description', true); // on récupère ce qu'on veut

// Pour avoir une description par défaut si on n'a rien récupéré
$metaDescriptionDefault = '...Votre description par défaut...';
if (!isset($metaDescription))
    $metaDescription = $metaDescriptionDefault;
?>

Et enfin, après la balise title déjà présente dans le fichier, ou en tout cas, quelque part entre les balises head:

<?php
if (isset($metaDescription)) 
    echo '<meta name="description" content="'.$metaDescription .'">';
?>

Voilà qui devrait faire l’affaire, chacune de vos pages aura maintenant une jolie description.

Aller plus loin

Comme je vous le disais au début, vous pouvez utiliser le même mécanisme pour personnaliser le contenu de la balise title. On pourrait également imaginer faire de même pour les balises Open Graph, permettant alors encore une fois de ne pas charger inutilement de nombreux plugins qui ne feront que ralentir votre site.

En suivant cette technique, vous pourrez obtenir un blog un tant soit peu optimisé pour le SEO, et ce sans plugins (donc plus rapide!).

facebooktwittergoogle_pluspinterestlinkedintumblrmailfacebooktwittergoogle_pluspinterestlinkedintumblrmail

Un commentaire

  1. Salut Julien,

    Ton tutoriel est simple, intéressant et facile à mettre en oeuvre, bravo ;)
    Seulement je me pose une question: lorsque tu utilises un plugin bien plus complet comme WordPress SEO By Yoast, tu n'as pas vraiment intérêt à l'abandonner, car il ne se contente pas de paramétrer les titres et descriptions.
    A moins que tu puisses nous proposer des tutoriels pour remplacer toutes ses fonctions?

    Amicalement,

    Bruno
    Reply
    • Salut Bruno.
      Je ne connais pas toutes les fonctions de ce plugin qui semble être un peu l'incontournable en la matière, mais si tu me fais une liste de ce qu'il y a besoin, ça pourrait peut-être faire l'objet de prochains articles.

      Par exemple, avoir du noindex sur les pages d'archives ou catégories peut être assez simple à faire.

Laisser un commentaire.