Personnaliser les balises title et description de Dotclear
Par Black Angel le mardi, 29 juin 2010, 22:22 - Dotclear - Lien permanent
Bien que Dotclear possède une excellente capacité de référencement naturel, il est parfois nécessaire d’optimiser certains détails pour des projets très concurrentiels. Comme le dit mon ami troll, aidons Google à bien nous indexer.
Je ne vais pas vous faire un cours de SEO, mais vous proposer une méthode pour optimiser les balises title et description des pages et des billets avec l’excellent plugin MyMeta.
Installer le plugin
Tout d’abord, il faut installer le plugin MyMeta dans sa dernière version (0.4.1 à l’heure où j’écris ses lignes).
Créer les métadonnées
Dans le menu Extensions, rendez-vous sur Mes métadonnées. Par soucis de clarté, nous allons d’abord créer une section pour ranger nos métadonnées. Appelons-la vulgairement SEO.
Créons la première métadonnée title. Dans le menu déroulant Nouveau MyMeta, laissez Chaine. Puis cliquez sur Créer un MyMeta. Dans cette nouvelle page, nous allons remplir les champs comme ceci :
- Identifiant : title
- Invite : Titre de la page
- Décochez les deux champs de URLs du MyMeta
- Laissez le bouton sur
Afficher le champ pour tous les types de billets
sauf si vous savez ce que vous faites.
L’identifiant est à retenir, nous l’utiliserons dans les templates. L’invite est là pour faire joli comme vous le constaterez dans la partie suivante. Le reste est utile dans un cadre qui dépasse ce billet[1].
Je pense qu’une petite illustration ne fera pas de mal.
Reproduisez la même technique pour la métadonnée description avec les champs modifiés suivants :
- Identifiant : description
- Invite : Description de la page
Visualisons avec une illustration.
Et n’oubliez pas d’activer les deux métadonnées, sinon que pouic !
Maintenant, vous devriez avoir quelque chose qui ressemble à l’image qui suit, où j’insiste innocemment sur l’activation[2].
Ecrire un billet test
Pour être certain que tout se soit bien passé, allons écrire un billet. Surprise, juste en bas de votre encadré habituel, nos deux champs sont apparus sous un libellé SEO[3], avec nos belles invites dont je vous parlais ci-dessus. C’est plus joli comme ça, non ?
Pour le fun et surtout pour tester, on va créer un billet comme ceci :
Je teste MyMeta pour du SEO
Un petit billet qui ne veut rien dire, mais il fallait bien mettre quelque chose.
Puis nous allons mettre ceci dans les champs SEO :
- Titre de la page
- Test de MyMeta pour optimiser son référencement
- Descritption de la page
- Avec MyMeta, mes métadonnées sont aussi rédigées pour les moteurs de recherches dont Google, Yahoo, Bing et compagnie.
Une petite image qui va bien pour illustrer le tout.
Si vous n’avez pas d’autres billets rédigés, créez-en un mais sans remplir les champs SEO. C’est pour la démonstration. 
Modifier les templates
Au moyen de l’éditeur de thème de Dotclear, nous allons modifier les templates post.html et page.html afin d’ajouter nos title et description personnalisés. La manipulation est exactement la même pour les deux templates.
Repérez au tout début du template ces lignes :
<title>{{tpl:EntryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}</title>
<meta name="description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
et remplacez-les par :
<tpl:MyMetaIf id="title" defined="true">
<title>{{tpl:EntryMyMetaValue id="title" encode_html="1"}} - {{tpl:BlogName encode_html="1"}}</title>
</tpl:MyMetaIf>
<tpl:MyMetaIf id="title" defined="false">
<title>{{tpl:EntryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}</title>
</tpl:MyMetaIf>
<tpl:MyMetaIf id="description" defined="true">
<meta name="description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryMyMetaValue id="description" encode_html="1" remove_html="1"}}" />
</tpl:MyMetaIf>
<tpl:MyMetaIf id="description" defined="false">
<meta name="description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
</tpl:MyMetaIf>.
Enregistrez vos modifications et n’hésitez pas à nettoyer le cache de templates dans Extensions -> Maintenance.
Comprendre avec la traduction en langage humain
Si comme moi vous n’avez pas pris templates Dotclear comme 3e langue à l’école, une traduction vous sera certainement utile, non ? Alors décryptons ensemble ce texte obscur.
<tpl:MyMetaIf id="title" defined="true">
<title>{{tpl:EntryMyMetaValue id="title" encode_html="1"}} - {{tpl:BlogName encode_html="1"}}</title>
</tpl:MyMetaIf>
S’il existe un MyMeta qui s’appelle title, alors on fournit le texte qui s’y trouve et on met même le nom du blog après.
<tpl:MyMetaIf id="title" defined="false">
<title>{{tpl:EntryTitle encode_html="1"}} - {{tpl:BlogName encode_html="1"}}</title>
</tpl:MyMetaIf>
Il n’y a pas de MyMeta, alors on utilise le titre du billet et on donne toujours le nom du blog pour faire bien.
<tpl:MyMetaIf id="description" defined="true">
<meta name="description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryMyMetaValue id="description" encode_html="1" remove_html="1"}}" />
</tpl:MyMetaIf>
Si il existe un MyMeta qui s’appelle description, alors on fournit la langue du blog et surtout le contenu de description.
<tpl:MyMetaIf id="description" defined="false">
<meta name="description" lang="{{tpl:EntryLang}}" content="{{tpl:EntryContent full="1" encode_html="1" remove_html="1" cut_string="180"}}" />
</tpl:MyMetaIf>
Il n’y a pas de MyMeta qui s’appelle description, alors on fournit tout le billet, mais on coupe quand même après 180 caractères.
Remarques
Il y a quelques petits détails importants à noter si vous vous voulez éviter les problèmes avec les moteurs de recherches ou pire, avec vos internautes.
- Les champs doivent être des phrases et non une suite de mots-clés. En outre, c’est mieux pour vos visiteurs qui verront des jolis noms dans la barre supérieure de leur navigateur ou dans leurs favoris. Vos lecteurs d’abord, les moteurs de recherches ensuite !
- Le champs description ne doit pas contenir plus de 180 caractères. On peut pousser un peu plus loin, mais moi, j’éviterai. En outre, ça uniformise un peu entre les descriptions personnalisées et les autres.
- Variez vos mots-clés, mais pas trop au risque de perdre vos visiteurs.
- Soyez honnêtes et ne mettez pas des mots-clés qui n’ont rien à voir avec votre sujet.
- Si vous n’êtes pas sûr de la nécessité de faire cette manipulation, ne la faites pas.

Les résultats
On parle, on parle, mais on a toujours pas vu si cela fonctionne ! Allez voir votre billet de test sur le blog et surprise, la phrase Test de MyMeta pour optimiser son référencement
est bel et bien affichée dans la partie supérieure de votre navigateur. En allant jeter un coup d’oeil dans le code source de la page, vous verrez que c’est aussi le cas pour la meta description.
Un autre petit coup d’oeil pour être sûr, regardez vos anciens billets (ou le deuxième billet test). Et oui, c’est le titre de votre billet qui s’affiche. Tout va donc très bien. 
Conclusion
Cette méthode est intéressante mais demande un investissement supplémentaire en tant que rédacteur. En outre, il faut surveiller la quantité de caractère dans vos champs. Un petit compteur de caractère à côté du champ serait un réel plaisir. Non non, ce n’est pas un message aux développeurs de plugins, quoique…
Et si vous êtes des curieux, vous verrez que pour l’instant, je n’ai même pas mis cette méthode en pratique ici. Peut-être parce que je tiens ce blog pour le plaisir et non pour le référencement ? 
Notes
[1] Pour approfondir l’étude de ce solde, allez voir des cas pratiques de MyMeta par Dsls, l’auteur dudit plugin. Ainsi que le plugin Muppet d’Osku. Vous y comprendrez alors tout l’intérêt de ces champs.
[2] Pour les têtes en l’air comme moi. 
[3] En parlant de SEO, cet article est une mine à mots-clés. Je me rends compte après coup. O.o

Commentaires
Excellent article! Le référencement n’est pas dans mes priorités à l’heure actuelle, mais j’ai trouvé ça très intéressant
Ps: “Sinon que pouic” ?
Que pouic signifie rien. Donc sinon les métadonnées ne sont pas activées, il ne se passera rien du tout. http://fr.wiktionary.org/wiki/que_p…
@Black Angel : Oui, bon, j’avais compris la signification ho! Je ne connaissais pas cette expression mais elle me plaît bien^^
Merci pour ce super tuto, il me permet enfin de personnaliser les meta comme je le fait sur wordpresse depuis plusieurs mois! Merci beaucoup.
Tuto très bien écrit bravo : c’est claire comme de l’eau de roche.
Bonne continuation,
Pierre
Clair et pratique. Depuis le temps que cette extension est installée mais désactivée sur mon blog. Reste plus qu’a la mettre en pratique sur tous les anciens billets. Merci bien.
Merci pour ce petit tuto, la doc officielle n’est pas clear, elle…