Liens sortants de spam : impact SEO et nettoyage
Google voit une ferme de liens : pied de page, articles anciens, commentaires, widgets. Désavouer trop tôt, avant d'avoir retiré les liens, envoie un signal contradictoire. On retire, on attend, on désavoue seulement s'il en reste hors de votre contrôle.
Google voit une ferme de liens. Désavouer trop tôt, avant d'avoir retiré les liens, envoie un signal contradictoire. On retire, on attend, on désavoue si besoin.
Ce que « ferme de liens » veut dire
Après un piratage, vos pages pointent vers des casinos, des pharmacies, des réseaux de PBN. Google le lit comme vous vendant des liens. Ce n'est pas une « pénalité magique » automatique, mais ça dilue la pertinence et, dans les cas lourds, nourrit une action manuelle.
Le rapport Liens de Search Console (liens externes sortants, si disponible) et un crawl (Screaming Frog, site: + vue source du footer) montrent l'ampleur. Un seul lien dans un article de 2019 et 400 liens en `display:none` dans le thème ne se traitent pas pareil.
Ne commencez pas par Search Console « désavouer ». Cet outil parle des liens qui pointent vers vous. Pour les liens que vous émettez, la seule réparation propre est d'arrêter de les émettre.
Un crawl interne (Screaming Frog, ou simplement le code source de dix pages au hasard : home, un article de 2018, une catégorie, le footer mobile) suffit à classer l'ampleur. Si le même bloc de liens revient partout, c'est le template. S'il n'apparaît que dans de vieux billets, c'est la base. Les deux à la fois, c'est le combo habituel après un File Manager.
Avant tout Disavow, exportez un crawl des domaines sortants (colonne « external links ») et rangez-le avec la copie du site. C'est votre avant/après. Trois semaines plus tard, Search Console n'aura peut-être rien mis à jour ; le crawl, si. Si vous déléguez, ce fichier évite qu'on « désavoue Internet » à votre place. Les liens dans le JSON Elementor et les `theme_mods` échappent aux plugins « link cleaner » : prévoyez une passe dédiée.
Où ils sont injectés
Thème : `footer.php`, `header.php`, un `sidebar.php`. Parfois un `eval` dans `functions.php`. Thème enfant : c'est là qu'on écrase trop vite avec « réparer » Wordfence.
Base : `wp_posts.post_content` (articles anciens), `wp_options` (widget texte, theme_mods), champs Elementor / page builder. Un grep SQL sur `casino`, `.xyz`, `bit.ly` oriente. Les commentaires WordPress avec payload : autre porte — à modérer, pas seulement à nofollow.
Fichiers : un PHP dans `uploads` qui s'inclut et dump des `<a>`. Un mu-plugin. Un `.htaccess` n'ajoute pas de liens, mais peut rediriger le clic. Cherchez aussi les canonicals et hreflang vers un tiers — ce n'est pas un `<a>` mais ça consolide ailleurs. Canonicals.
Grepez aussi `window.location` et les `base href` : ce ne sont pas des `<a>` mais le visiteur part pareil, et Google le voit. Un `footer.php` de 3 Ko devenu 18 Ko le jour de l'incident n'a pas « juste pris du CSS ».
- Footer / widgets / theme_mods.
- Contenu des articles et révisions.
- mu-plugins et includes dans uploads.
Retirer avant de désavouer
Tant que le HTML sort les liens, Google les recrawl. Un Disavow sur des domaines que vous linkez encore est incohérent : vous dites « ce n'est pas moi » en les laissant en ligne. D'abord nettoyage, crawl de contrôle, 48–72 h, puis on décide du désaveu.
Retirer veut dire : fichier propre comparé au zip officiel, option nettoyée, article nettoyé (ou 410 si l'article n'était que du spam). Une regex « supprimer tous les `<a href>` » casse le site. On cible les domaines étrangers à votre métier.
Gardez une liste des domaines cibles. Elle sert au constat et, plus tard, au Disavow si des copies hors de votre contrôle existent (cache, site miroir, sous-domaine oublié).
Le fichier Disavow n'efface pas le HTML
Disavow s'adresse aux liens entrants toxiques — ceux que d'autres sites posent vers vous. Après un hack, on le confond avec les liens sortants. Ce sont deux graphes.
Si l'attaquant a aussi créé des PBN qui pointent vers vous (moins fréquent que l'injection sortante), là un Disavow peut aider — après le site propre, pas avant. Un fichier trop large (« je désavoue tout le web ») est ignoré ou dangereux.
Ne désavouez pas vos propres sous-domaines légitimes, vos réseaux sociaux, vos partenaires. Relisez deux fois.
Nofollow, sponsored, et le mythe
Passer tous les liens injectés en nofollow « pour le temps du nettoyage » n'est pas un plan. Google les voit encore. Retirez-les. Le nofollow sert aux liens que vous choisissez de garder (commentaire légitime, partenaire).
Un plugin SEO qui ajoute du nofollow global après coup n'efface pas une action manuelle « liens artificiels » déjà ouverte. L'action manuelle a sa file. Action manuelle après hack.
Quand le désaveu devient utile
Reste de liens sur un sous-domaine que vous ne contrôlez plus, un CDN d'images qui sert encore une page HTML, un ancien hébergement. Là, Disavow + oubli DNS. Documentez pourquoi ces URL ne sont plus à vous.
Si Google a ouvert une action manuelle liens, le dossier de réexamen doit dire : liens retirés (preuves), Disavow pour le reste hors contrôle. Pas l'inverse.
Mesurer sans s'affoler
Le trafic peut baisser parce que l'alerte Chrome coupe le clic, pas à cause des liens. Séparez les horloges — trafic effondré.
Un crawl mensuel des domaines sortants pendant trente jours détecte une backdoor qui réinjecte le footer. C'est plus utile qu'un nouvel audit « toxic score » payant.
Le nettoyage CMS reste WordPress. Pour un grep contenu + thème, créer un espace.
Un footer réinjecté à J+6 dit qu'une backdoor tourne. Surveillez le poids de `footer.php` et un crawl mensuel pendant trente jours. Le guide backdoor PHP décrit cette fenêtre. Le CMS se referme comme d'habitude : WordPress piraté. Pour un grep contenu + thème, créez un espace : le prix s'affiche avant l'accès.