JNofollow — Documentation
JNofollow is a native Joomla content plugin that manages rel and target for external links. It’s lightweight, configurable, and built for Joomla 4 & 5.
1) Install
Install the ZIP via System → Extensions → Install. After a success message, proceed to enable and configure the plugin.
2) Enable & Configure
Open System → Manage → Plugins and search for Content – JNofollow by SEO NW. Enable it and open the settings.
3) All Options Explained
Processing
- Plugin enabled — Master switch for processing.
- Category filter — Restrict processing to selected categories (others remain unchanged).
- Debug log — Writes processing details to Joomla’s log (category
plg_content_nofollow).
rel handling
- rel mode
- Keep — preserve existing
reland extend with configured tokens. - Overwrite — replace existing
relentirely.
- Keep — preserve existing
- Include
noopener— add for safer new-tab behavior. - Include
noreferrer— hide referrer (SEO/analytics impact). - Extra rel values — optional tokens like
ugc,sponsored.
target handling
- target mode
- Keep — leave as set in the editor.
- Always
_blank— open external links in a new tab.
Class filter
- Class mode
- Exclude — process all links except those with the listed classes.
- Include — process only links that contain at least one of the listed classes.
- Class list — space- or comma-separated class names (no leading dot).
Allow/Deny lists
- Domain whitelist — treat these domains as internal (no external processing). One domain per line, e.g.
example.com. Subdomains are included automatically. - Domain blacklist — always force
rel="nofollow"for these domains (overrides any bypass). One domain per line.
Bypass rules (optional)
- Bypass via rel tokens — if the link already has one of the selected tokens (
noopener,noreferrer,ugc,sponsored) and does not containnofollow, the link stays follow. - Bypass via CSS classes — links with any of these classes stay follow (e.g.
follow). - Bypass via
data-follow— if a link hasdata-follow="1|true|yes", it stays follow. - Remove existing
nofollowwhen bypass matches — if enabled and a bypass rule applies, an existingnofollowis removed. - Priority note: The blacklist has higher priority than any bypass rule.
4) Article Switches
Use the following tokens inside article content to exclude processing:
- Exclude entire article:
- Exclude a section:
… content … - Backward-compatibility:
…
5) Whitelist & Blacklist
Whitelist
Enter one domain per line (no protocol, no path). Examples:
example.com
partner.tld
docs.example.org
Subdomains are included automatically — example.com covers www.example.com, blog.example.com, etc.
Blacklist
Enter one domain per line. Blacklisted domains always receive rel="nofollow", even if a bypass rule would normally apply.
6) Per-Link Bypass
- rel tokens — If a link already contains one of your allowed tokens (e.g.,
rel="noopener") and does not containnofollow, it stays follow. - CSS classes — Add a class like
followto force follow. - data attribute — Add
data-follow="1"(ortrue/yes) to force follow. - Optional cleanup — If enabled, existing
nofollowis removed when a bypass matches.
7) Examples
Site-wide enforcement
Input:
<a href="https://example.com">Example</a>
Output (keep or overwrite mode depending on your setting):
<a href="https://example.com" rel="nofollow noopener noreferrer" target="_blank">Example</a>
Keep a single link as follow (bypass via rel token)
Input:
<a href="https://partner.tld" rel="noopener">Partner</a>
Output:
<a href="https://partner.tld" rel="noopener">Partner</a>
Force follow via CSS class
<a href="https://partner.tld" class="follow">Partner</a>
Force follow via data attribute
<a href="https://partner.tld" data-follow="1">Partner</a>
Exclude a section in an article
<p>This section is not processed by JNofollow.</p>
8) Troubleshooting
- Still seeing
nofollowon a bypassed link?
Ensure the link does not already containnofollowand that your bypass option(s) are enabled. Remember: the blacklist overrides bypass. - Settings not applied?
Clear Joomla and OPcache, then resave the plugin settings. - Logs
Enable Debug log and checkplg_content_nofollowentries in the Joomla logs to see decision details per link.
9) Compatibility
- Joomla: 4 & 5
- PHP: tested with PHP 8.0–8.4
- License: GPLv3
10) Support
Questions or ideas? Visit jnofollow.com/support or email
Maintained by Alexander Müller — SEO NW.