Comment passer automatiquement les liens de vos anciens articles WordPress en Nofollow ?

Google rode et comme il vaut mieux prévenir que guérir je me suis dit que ce serait une bonne idée de passer les liens de mes vieux articles en Nofollow, seulement je n'ai pas trouvé de plug-in pour ça et je n'ai pas vraiment le courage de modifier des milliers d'articles manuellement. Heureusement il y a une solution beaucoup plus simple.

Passer manuellement des centaines de liens en nofollow c’est long et fastidieux

Il est possible sous WordPress de le faire « en dur » via des requêtes SQL de remplacement plus ou moins complexes, mais je préfère éviter, un mauvais réglage aboutissant vite à une catastrophe.

Comment passer automatiquement les liens de vos anciens articles WordPress en Nofollow ?

Après 3 bonnes minutes de recherches infructueuses je me suis dit que je gagnerais du temps à me sortir les doigts du popotin plutôt que de continuer à chercher. Je vous livre donc sans plus attendre le fruit de mon dur labeur (presque 4 minutes quand même) soit moins de temps que ne m'en a pris la rédaction de cet article.

Un simple filtre pour modifier les liens « à la volée » lors de l’affichage des articles

J'ai un peu élagué le code ci-après qui chez moi ouvre aussi les liens dans de nouvelles fenêtres, et exclut certains articles, mais c'est très simple à rajouter.

Insérez dans votre fichier function.php le bout de code suivant :

add_filter('the_content', 'creerunblog_nofollow');
function creerunblog_nofollow( $content ){
        $nb_j = 365; // nombre de jours au bout duquel passer les liens d'une article en nofollow
        if (((strtotime(date('Y-m-d')) - strtotime(get_the_time('Y-m-d', get_the_ID())))/86400)>$nb_j) {
                return preg_replace('/href=["|']?(https?://(?!domain.com)([^"']*))["|']?/ui', "href="$1" rel="nofollow" ", $content);
        } else {
                return $content;
        }
}

Ce script PHP assez simple ne nécessite pas beaucoup d'explications je pense.

  • Vous pouvez régler le nombre de jours aux bout desquels les liens passeront nofollow en remplaçant 365 (pour 1 an) par autre chose
  • Pour que les liens internes à votre site ne soient jamais mis en nofollow n'oubliez pas de remplacer domain.com par votre domaine

votes
Noter cet article

S’abonner
Notifier de
guest
4 Commentaires
le plus populaire
le plus récent le plus ancien
Inline Feedbacks
View all comments
Eric
Eric
6 mai 2014

Quel intérêt de passer ses anciens billets en nofollow ? Soit on fait tout, soit rien ?!?!
Et avez-vous honte, aujourd’hui, de vos anciens liens ?

Stéphane
Stéphane
28 juillet 2014

@Fabien
Bonjour
Depuis que Google à changé son algorithme(pingouin)il est recommandé d avoir aussi des liens en No follow car visiblement la bestiole n aime pas les sites sur-optimisés .
Ce nouvel algo est nettement moins permissif que le précédent (Panda)