L’obfuscation de lien est une technique utilisée en SEO pour gérer la manière dont les moteurs de recherche explorent et attribuent de la valeur aux liens sur votre site. En lien direct avec le PageRank, cette méthode permet d’optimiser la répartition de l’autorité (link juice) entre les pages de votre site.
Qu’est-ce que le PageRank ?
Le PageRank est un algorithme développé par Larry Page et Sergey Brin, les fondateurs de Google, qui a transformé la manière dont les moteurs de recherche classent les pages web. Son objectif ? Mesurer la popularité et l’importance d’une page web en analysant les liens pointant vers celle-ci.
Imaginez Internet comme un réseau géant où chaque lien est un vote de confiance. Voici les deux principes fondamentaux :
- Les liens sont des votes. Chaque lien qui pointe vers votre page est considéré comme une recommandation.
- Tous les votes n’ont pas la même valeur. Un lien provenant d’un site très réputé (comme une grande institution ou un média) pèse plus lourd qu’un lien d’un site peu connu.
Google calcule un score pour chaque page en fonction de la quantité et de la qualité des liens entrants. Ce score est ensuite en parti utilisé pour déterminer la place de la page dans les résultats de recherche.
Avant Google, les moteurs de recherche se contentaient de regarder les mots-clés sur une page pour classer les résultats. Avec le PageRank, Google a introduit une mesure de popularité et de pertinence qui a permis de rendre les résultats plus fiables et utiles.
Ces liens inutiles qui sabotent votre SEO sans que vous le sachiez
Sur certaines pages, comme les pages de navigation (menus, bas de page, widgets), de nombreux liens peuvent être présents mais sans réelle valeur SEO. Ces liens, bien qu’utiles pour les utilisateurs, peuvent disperser inutilement le PageRank. Cela peut affecter les pages importantes de votre site WordPress qui devraient recevoir davantage d’autorité.
Qu’est-ce que l’obfuscation de lien ?
L’obfuscation de lien consiste à masquer une URL pour éviter qu’elle ne soit suivie ou interprétée par les moteurs de recherche. L’objectif ? Empêcher certains liens de transmettre du « link juice » (l’autorité d’un site) ou de diluer la pertinence des pages stratégiques. Cette technique peut s’appliquer, par exemple, aux liens d’affiliation, aux URL internes peu importantes, ou encore aux pages que l’on souhaite rendre accessibles uniquement aux utilisateurs.
En pratique, cela peut se faire via des scripts JavaScript, des formulaires HTML, ou encore des redirections complexes. Contrairement au classique attribut nofollow
, qui est explicite pour Google, l’obfuscation est plus subtile, voire invisible pour les robots.
Voici comment fonctionne l’obfuscation d’un lien hypertextuel.
- Liens en JavaScript :
Les liens sont générés dynamiquement via JavaScript ce qui rend leur lecture difficile pour les robots de certains moteurs de recherche (bien que Google soit de plus en plus performant dans leur interprétation). - Attributs spécifiques :
Ajouter des attributs commerel="nofollow"
empêche le transfert d’autorité mais cela n’équivaut pas à une véritable obfuscation car le lien reste visible par le robot.
Comment reconnaître un lien obfusqué ?
Normalement, lorsqu’un lien est survolé avec la souris, son URL s’affiche en bas de la page (dans la barre d’état). Si cela ne se produit pas, il est probable qu’un script JavaScript bloque cet affichage.
- Passez la souris sur le lien : si aucune URL ne s’affiche, il s’agit peut-être d’un lien obfusqué.
- Essayez de désactiver JavaScript dans votre navigateur. Certains liens ne fonctionneront plus, ce qui confirme qu’ils dépendent d’un script pour être cliquables.
Lien standard : Découvrez 5 astuces pour accélérer votre PC !
Lien obfusqué :
!Mettre en place un lien obfusqué avec JS, BASE64 et CSS
Que ce soit pour dissimuler un lien d’affiliation, éviter que des robots malveillants les exploitent ou simplement pour améliorer l’esthétique du code, l’obfuscation est une arme redoutable. Aujourd’hui, je vous explique comment utiliser Base64 pour masquer vos URL.
Voici une démonstration pratique pour mieux comprendre comment cela fonctionne. Supposons que vous ayez un lien vers une page produit :
https://assistouest.fr/ordinateur-lent-5-astuces-pour-accelerer-votre-pc/
Nous allons le convertir en Base64 et utiliser JavaScript pour que la page s’ouvre lorsque l’utilisateur clique sur un élément de votre site.
L’URL est encodée en Base64. Elle devient :
aHR0cHM6Ly9hc3Npc3RvdWVzdC5mci9vcmRpbmF0ZXVyLWxlbnQtNS1hc3R1Y2VzLXBvdXItYWNjZWxlcmVyLXZvdHJlLXBjLw==
On commence par ajouter notre code HTML :
<p>Vous trouvez votre ordinateur lent ? Découvrez
<span class="obfuscated-link" data-url="aHR0cHM6Ly9hc3Npc3RvdWVzdC5mci9vcmRpbmF0ZXVyLWxlbnQtNS1hc3R1Y2VzLXBvdXItYWNjZWxlcmVyLXZvdHJlLXBjLw==">5 astuces pour accélérer votre PC</span>
!</p>
La balise <span>
contient le lien obfusqué au lieu de <a>
.
On ajoute en suite le code JavaScript qui permet de décoder le lien obfusqué au moment de clic :
<script>
// Récupération de tous les éléments avec la classe 'obfuscated-link'
const links = document.querySelectorAll('.obfuscated-link');
links.forEach(link => {
link.addEventListener('click', function() {
const encodedUrl = this.getAttribute('data-url'); // Récupère l’URL encodée
const decodedUrl = atob(encodedUrl); // Décodage en Base64
window.open(decodedUrl, '_blank'); // Ouvre le lien dans un nouvel onglet
});
});
</script>
Pour rendre le lien obfusqué totalement invisible on ajouter à sa classe CSS la même forme qu’un lien standard :
<style>
/* Style pour les liens obfusqués */
.obfuscated-link {
cursor: pointer;
color: #007bff; /* Bleu similaire aux liens classiques */
text-decoration: underline;
transition: color 0.3s ease;
}
/* Effet hover pour ressembler à un vrai lien */
.obfuscated-link:hover {
color: #0056b3; /* Un bleu plus foncé au survol */
}
/* Style pour le texte du paragraphe */
p {
font-family: Arial, sans-serif;
line-height: 1.5;
}
</style>
Ainsi lorsque l’on veut créer plusieurs liens vers des pages différents, il nous reste simplement à remplacer le contenu de la balise url-data= »XXX » par l’url encodé.