Optimiser (un peu) votre référencement DotClear2
Par Twister le lundi, octobre 29 2007, 16:15 - Informatique - Lien permanent
Certains tags HTML servent au référencement de vos sites. Ces tags permettent une bien meilleur visibilité de votre site dans les moteurs de recherche, malheureusement DotClear2 les ignore tout bonnement...
En effet DotClear2 ne gère aucuns tag META-KEYWORDS ou META-DESCRIPTION, ce qui est bien dommage. En effet, même si les keywords ne servent plus à grand chose aujourd'hui dans le domaine de l'indexation, le champs description lui est utilisé par les moteurs pour afficher un résumé de la page indéxée.
Je vous propose donc ici un petit hack de DotClear2 afin de gérer ces 2 tags...
Commençons par le plus simple...
Mettre la liste des tags d'un post dans le champ META-KEYWORDS de sa page...
Rien de plus simple, éditez le template affichant les posts de votre thème (posts.html) et rajoutez dans le header le code suivant :
<meta name="keywords" content="<tpl:EntryMetaData type="tag">{{tpl:MetaID}} </tpl:EntryMetaData>"/>
Trop dur hein ? 
Maintenant on va faire un peu plus compliqué puisqu'il est nécessaire de modifier le code de DotClear2 afin de générer un résumé du post s'il n'a pas de chapo...
Resumé dans le champs META-DESCRIPTION
- Editez le fichier inc/core/class.dc.rs.extensions.php.
- Rajoutez une fonction getSummary après la fonction getExcerpt.
Voici le code de cette fonction :
public static function getSummary(&$rs,$absolute_urls=false)
{
$excerpt = $rs->post_excerpt_xhtml;
$content = $rs->post_content_xhtml;
if ($excerpt == '') {
$content = substr($content, 0, 1000);
$content = html_entity_decode($content);
$content = preg_replace("/<.*?>/", " ", $content);
$content = htmlentities($content, ENT_COMPAT, "UTF-8");
$content = preg_replace("/[^\w&',.;:!\? ]/", " ", $content);
$content = preg_replace("/[ ]+/", " ", $content);
$words = explode(" ", $content);
$limit = 50 < sizeof($words) ? 50 : sizeof($words);
for ($i = 0; $i < $limit; $i++) {
$excerpt = $excerpt . " " . $words[$i];
}
} else {
$excerpt = html_entity_decode($excerpt);
$excerpt = preg_replace("/<.*?>/", " ", $excerpt);
$excerpt = htmlentities($excerpt, ENT_COMPAT, "UTF-8");
$excerpt = preg_replace("/[ ]+/", " ", $excerpt);
}
return $excerpt;
}
Ensuite on utilisera cette fonction dans notre template pour remplir le champ META-DESCRIPTION. Pour ce faire il faut définir cette fonction comme étant utilisable dans les templates. Pour ce faire, editez : inc public/class.dc.template.php et, après la ligne :
$this->addValue('EntryExcerpt',array($this,'EntryExcerpt'));
rajoutez la ligne suivante :
$this->addValue('EntrySummary',array($this,'EntrySummary'));
Editez ensuite à nouveau votre fichier post.html et rajoutez sous la ligne précédement rajoutée la ligne suivante :
<meta name="description" content="{{tpl:EntrySummary}}"/>
Commentaires
Ah je comprends mieux pourquoi ton pagerank est à 0 et le mien à 2 (WordPress rulez :p )
...euh j'ai pas tout compris... Je dois le mettre ou tout ça sur mon site moi?........................... bon ok, je sors...
Non, je ne sais pas encore pourquoi je n'ai jamais de PageRank. Cela dit comme Google n'a pas refait de rafraichissement du PageRank depuis un moment c'est peut être juste pour ça
Bah en fait le rafraichissement du PageRank a eu lieu il y a moins d'une semaine
Ouais, j'allais le dire, j'ai lu ca dans la journée... Tu as vu en bas de la page principal de mon blog ??? C'est qui qui en a une toute petite en fait ?
Pas mal
Putain !!!

Trois posts d'affilés auxquels je ne comprends RIEN !!!
Bande de Geeks !
Bonsoir
J'ai voulu faire ce que vous aviez préconisé, résultat je n'ai plus de blog........
Je suis désamparé, j'ai beau remettre le "post.html" comme il était avant, mon blog ne fonctionne plus....
Remettez aussi les autres fichiers comme avant.
Sinon c'est peut être juste une histoire de cache, videz le répertoire cache qui se trouve à la racine de votre blog et voyez si votre blog est revenu. Pour ce qui est de mon code, il faudrait que je teste mais il se peut qu'il ne marche plus sur les version récentes de dotclear. Par ailleurs ce code est fait pour un DotClear 2, pas pour le 1.
Re-bonsoir
Merci pour votre aide. J'ai vidé le cache, et effectivement le blog a été remis en état (ouuuuf).
Par contre, j'ai toujours un petit problème au niveau des tag ( http://www.eteignezvotreordinateur.... ).
Comme vous pouvez le voir, en dessous des titres des articles, on voit "{{tpl:MetaID}} " au lieu des tags en question (pb non existant si on clique sur l'article, car les tags reviennent).
Qu'en pensez vous ?
J'ai un blog DOTCLEAR 2, mais il se peut que j'ai mal appliqué vos conseils, car je suis débutant.
J'ai bidouillé comme j'ai pu, et tout remarche, même les tags...
A croire que la programmatiion ne suit aucune logique ?!!!! :s
J'ai vraiment fait n'importe quoi et ça vient de remarcher...
Merci
bonjour,
je cherche un moyen de référencer mon site sans le pénaliser auprès de google.
On dit aujourd'hui qu'il n'est plus bon de baser son référencement sur les annuaires voir ici http://www.pro-web31.com/referencem... Qu'en pensez vous ?
Sinon je voudrais bien savoir ou est ce que l'on peut inscrire son site.
merci pour vos avis.