Lorsqu'un commentaire est posté par un visiteur (anonyme ou authentifié) sur un site drupal, il est possible de mettre une lien externe vers le site de l'auteur du commentaire. Ces liens ont par défaut un attribut rel="nofollow". Ils semblent que de nombreux débats au sein de la communauté Drupal ont abouti à ce choix afin de limiter les spams (créations de comptes ou de commentaires par des robots dans le but de gagner en référencement).

Si la qualité des commentaires soumis est contrôlée et qu'on peut se prémunir de ces spams ou en limiter les effets néfastes, il peut être intéressant d'autoriser les robots à suivre ces liens. Afin de supprimer la balise rel="nofollow" sur les liens des auteurs de commentaires il convient de travailler au niveau du thème. Les modules devel et theme developer ont permis de mettre en évidence que le hook_link() est à l'origine de cette balise. Il est donc possible de le modifier en agissant au niveau du fichier template.php du theme en créant une fonction comme suit:

function NomDuTheme_link($variables) {
$variables['options']['attributes']['rel'][0] = '';
return '<a href="' . check_plain(url($variables['path'], $variables['options'])) . '"' . drupal_attributes
($variables['options']['attributes']) . '>' . ($variables['options']['html'] ? $variables['text'] : check_plain($variables['text'])) . '</a>';

Écrit par

bendev le 30/09/2012

We are part of it !

#Drupal