Title: JS Links &#8211; SEO Link Obfuscation
Author: Pierre Ribeaucourt
Published: <strong>24, Ochobre de 2025</strong>
Last modified: 24, Ochobre de 2025

---

Guetar plugins

![](https://ps.w.org/js-links/assets/banner-772x250.png?rev=3384096)

![](https://ps.w.org/js-links/assets/icon-256x256.png?rev=3384096)

# JS Links – SEO Link Obfuscation

 By [Pierre Ribeaucourt](https://profiles.wordpress.org/pierreseo/)

[Download](https://downloads.wordpress.org/plugin/js-links.2.0.0.zip)

 * [Details](https://ast.wordpress.org/plugins/js-links/#description)
 * [Reviews](https://ast.wordpress.org/plugins/js-links/#reviews)
 *  [Installation](https://ast.wordpress.org/plugins/js-links/#installation)
 * [Development](https://ast.wordpress.org/plugins/js-links/#developers)

 [Support](https://wordpress.org/support/plugin/js-links/)

## Description

**JS Links** lets you obfuscate links so crawlers can’t follow them — while users
still can.
 It replaces `<a>` tags with accessible `<span>` elements (`role="link"`,`
tabindex="0"`) containing Base64-encoded URLs.

✅ **Use cases**
 – Hide links to legal pages, login, or affiliate URLs – Prevent
PageRank dilution in footers or widgets – Keep a clean, SEO-friendly internal linking
structure

✅ **Key features**
 – Lightweight, no external calls or tracking – 100 % reversible(
disable = restores original links) – Works with all SEO plugins (Yoast, Rank Math,
SEOPress) – Compatible with any theme or builder – Accessible (keyboard navigation
supported) – Optionally disable obfuscation on specific pages – Custom CSS styling
per area (content, menu, footer, widget)

✅ **Why not just use `nofollow`?**
 Because `nofollow` links are still visible 
to crawlers and can leak PageRank. JS Links removes the `href` entirely and hides
the destination — Google can’t see it, so no PageRank flows.

✅ **Safe and compliant**
 JS Links follows WordPress coding standards and includes:–
URL sanitization (`esc_url_raw()`) – Output escaping (`esc_attr()`, `wp_kses_post()`)–
CSS filtering (`safecss_filter_attr()`) – Protection against reverse tabnabbing (`
noopener noreferrer`)

🧠 _Result: total control of your internal link flow, with zero impact on UX._

### Description (FR)

**JS Links** permet d’obfusquer certains liens pour empêcher Google et les robots
d’exploration de les suivre — tout en conservant un comportement identique pour 
l’utilisateur.
 Les balises `<a>` sont remplacées par des `<span>` cliquables (`
role="link"`, `tabindex="0"`) contenant l’URL encodée en Base64.

✅ **Cas d’usage**
 – Empêcher la transmission de PageRank sur les liens non stratégiques(
CGU, mentions légales, etc.) – Bloquer les liens d’affiliation ou externes sans 
casser le design – Préserver un maillage interne propre et hiérarchisé

✅ **Fonctionnalités**
 – Ultra-léger et 100 % réversible – Compatible avec tous
les thèmes et plugins SEO – Accessible au clavier – Personnalisation visuelle simple(
CSS par zone) – Exclusion possible de certaines pages

✅ **Différence avec `nofollow`**
 Un lien `nofollow` reste une balise `<a>` visible
par Google. JS Links, lui, supprime l’attribut `href` et encode l’URL — donc **Google
ne voit pas le lien.**

✅ **Sécurité**
 JS Links respecte les bonnes pratiques WordPress : – Nettoyage 
et validation des URLs – Échappement systématique des sorties – Filtrage CSS sécurisé–
Protection contre le reverse tabnabbing – Fallback sans JavaScript (`<noscript>`)

🧠 _En clair : tu gardes ton jus SEO sans sacrifier ton ergonomie._

### Credits

Developed and maintained by [Pierre Ribeaucourt](https://ribeaucourt.fr)

### Support

If you encounter any issues or have suggestions, feel free to open a thread on the
[Support Forum](https://wordpress.org/support/plugin/js-links/).

## Installation

 1. Upload the `js-links` folder to `/wp-content/plugins/`
 2. Activate the plugin through the “Plugins” menu in WordPress
 3. In the Gutenberg editor, use the **JS Link** button.
 4. For menus, a dedicated field is available under _Appearance > Menus_.

## FAQ

### How is this different from rel=”nofollow”?

A `nofollow` link is still a visible `<a>` tag and may leak PageRank.
 JS Links 
removes the `href` attribute and encodes the URL — Google doesn’t follow it.

### Is it compatible with SEO plugins like Yoast, Rank Math, or SEOPress?

Yes. JS Links runs after SEO plugins and doesn’t interfere with their output.

### Is it accessible?

Yes — links are fully keyboard-activable (`Enter` / `Space`) via `role="link"` and`
tabindex="0"`.
 However, some screen readers that only list real `<a>` links may
skip them. We recommend not obfuscating critical navigation or accessibility links.

### Can I exclude specific pages?

Yes, by listing their relative URLs (e.g., `/`, `/contact`, `/legal`) in the exclusion
field.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“JS Links – SEO Link Obfuscation” is open source software. The following people 
have contributed to this plugin.

Contributors

 *   [ Pierre Ribeaucourt ](https://profiles.wordpress.org/pierreseo/)

[Translate “JS Links – SEO Link Obfuscation” into your language.](https://translate.wordpress.org/projects/wp-plugins/js-links)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/js-links/), check out
the [SVN repository](https://plugins.svn.wordpress.org/js-links/), or subscribe 
to the [development log](https://plugins.trac.wordpress.org/log/js-links/) by [RSS](https://plugins.trac.wordpress.org/log/js-links/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 2.0.0

 * Initial WordPress.org release
 * WP 6.8 compatibility / PHP 7.4+
 * Improved accessibility and sanitization

## Meta

 *  Version **2.0.0**
 *  Last updated **6 meses ago**
 *  Active installations **10+**
 *  WordPress version ** 5.9 or higher **
 *  Tested up to **6.8.5**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/js-links/)
 * Tags
 * [accessibility](https://ast.wordpress.org/plugins/tags/accessibility/)[internal linking](https://ast.wordpress.org/plugins/tags/internal-linking/)
   [links](https://ast.wordpress.org/plugins/tags/links/)[obfuscation](https://ast.wordpress.org/plugins/tags/obfuscation/)
   [seo](https://ast.wordpress.org/plugins/tags/seo/)
 *  [Advanced View](https://ast.wordpress.org/plugins/js-links/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/js-links/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/js-links/reviews/)

## Contributors

 *   [ Pierre Ribeaucourt ](https://profiles.wordpress.org/pierreseo/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/js-links/)