Liens sortant en noFollow JS et PHP

Le référencement est une tâche complexe, il faut surveiller différents curseur de ce fait, agir efficacement n’est pas simple.

Dans cet article nous allons voir un des items à maîtriser pour optimiser votre positionnement sur les moteurs de recherches, le linkJuice.

Principe

La base de l’algorithme de google repose sur le PageRank (de Larry Pages co-fondateur de google). Le pageRank c’est un score attribué par les robots de google, plus il est faible meilleur est votre positionnement sur les SERP.

Pour définir ce score google utilise le linkJuice. Ce jus de liens est le rapport entre les liens entrant et sortant sur vos pages. En clair plus nombreux sont les liens pointant vers votre pages mieux c’est. Mais ce jus de liens est aussi dépendant des liens sortant de votre page.

Vous gagner en positionnement en créant des liens vers votre page mais vous en perdez en ciblant une autre page.

Tant que les liens restent sur votre domaine principal, cela ne pose pas trop de problèmes. Vous conservez votre crédit mais il est dilué sur les autres pages de votre site. Par contre en créant des liens vers d’autres nom de domaine vous perdez du jus de liens.

Pour éviter ce phénomène il faut utiliser l’attribut « nofollow » qui indique aux robots que le liens ne doit pas être exploré, Ainsi vous conservé le juicelink.

<a href="pasmondomaine.com" rel="nofollow">mon liens externe</a>

Pratique

Il suffit donc de définir un attribut rel="nofollow" sur les liens sortant de vos pages. Dans les faits l’opération peut être plus compliqué que prévu.

A lire  Formation Webmaster fin de la première semaine.

Site contenant beaucoup de liens à modifier.

Design ne permettant pas de modifier les attributs

Il faut donc modifier le code PHP ou créer une fonction Js pour réaliser l’opération automatiquement.

Solutions JS

La solutions la plus efficace est d’utiliser le JS, la fonction du javascript est justement de modifier le contenu d’une page HTML dans le navigateur, ainsi on est certain qu’aucun liens ne sera ignorés et que tout les liens sortant seront correctement modifier.

//On déclare notre fonction
function hrfeNoFollow (){
	//on stocke dans un tableau tout les liens pointant sur un domaine différent.
    links = document.querySelectorAll("a:not([href*=occitaweb])");
	//on traite les élément du tableau un par un
    for (let i=0;i<links.length;++i){
	//on ajoute l'attribut nofollow au lien
        links[i].setAttribute("rel", links[i].rel + " nofollow");
    }
}
//on appelle la fonction sur notre page
hrfeNoFollow ()

Explication querySelectorAll : nous utilisons un sélecteur CSS qui cible tout les liens hypertexte a qui ne contiennent pas occitaweb dans l’attribut href.
a:not([href*=occitaweb])

Et voilà maintenant tout vos liens sortant possède l’attribut nofollow !

Solutions PHP

La solutions PHP est discutable en terme d’efficacité, car on ne peut pas agir sur la page entière, mais uniquement sur les fonctions affichant le contenu.

Dans l’exemple de code suivant nous travaillerons avec la fonction the_content() qui retourne le contenu d’un articles ou d’une page, de ce fait on ignore les liens contenu sur d’autre élément de la page, comme le menu le footer ou le header par exemple.

Mais c’est une solution fonctionnelle qui aura l’avantage de ne page avoir à utiliser de Javascript ^^.

/**
* Ajoute rel="nofollow" au liens externe
*/
function add_nofollow_ext_link($content) {
	
$content = preg_replace_callback('/<a[^>]*href=["|\']([^"|\']*)["|\'][^>]*>([^<]*)<\/a>/i',
function($m) {

if (strpos($m[1], "occitaweb.fr") === false)
return '<a href="'.$m[1].'" rel="noopener noreferrer nofollow ">'.$m[2].'</a>';
}, $content);

return $content;
}
add_filter('the_content', 'add_nofollow_ext_link');

Attention les deux codes ne doivent pas être utilisés simultanément, sinon vous allez placer deux fois l’attribut noFollow.

A lire  Site internet que vous faut-il prendre en compte ?

Conclusion

Idéalement je recommande l’utilisation du script Js plus efficace et moins impactant pour votre serveur, mais à vous de voir en fonctions de vos besoins les deux codes peuvent être utile.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

© 2018 Occitaweb formation WordPress et média sociaux