Link Manager
Product: Admin Framework Pro
The Link Manager module improves how external links are handled in WordPress for better accessibility, security, and user experience. It automatically adds rel attributes, opens external links in new tabs with clear labels and icons, and lets you fine-tune speculative loading behavior in WordPress 6.8+.
How to use
To enable the Link Manager module:
- Click on the “Admin Tools” category
- Search or scroll to locate the Link Manager module
- Click on the switch to enable
What’s next?
This module enhances external links in your site content for accessibility, security, and UX. It can:
- Add rel attributes (noopener, noreferrer, nofollow) to external links
- Open external links in a new tab
- Append an accessible aria-label indicating “opens in a new tab”
- Add a small external-link arrow icon
- Configure WordPress 6.8+ Speculative Loading behavior
Where it works:
- On rendered content filtered by
the_content(posts, pages, custom post types)
1. Configure External Links
- Open the module’s “External Links” tab (Settings)
- Options:
- Exclude classes: Comma-separated CSS classes that prevent enhancement of specific links/containers
- Disable external link arrow: Turn off the arrow icon globally (not recommended for accessibility)
- Save settings
Available exclusion classes to add to a link or any ancestor element:
- Arrow:
wpe-exclude--arrow,wpe-no-arrow - rel:
wpe-exclude--rel,wpe-no-rel - New tab:
wpe-exclude--new-tab,wpe-no-new-tab - Aria-label:
wpe-exclude--aria-label,wpe-no-aria-label - All enhancements:
wpe-exclude--link,wpe-no-external-link
2. Speculative Loading (WordPress 6.8+)
- Open the “Speculative Loading” tab (Settings)
- Options:
- Disable speculative loading
- Loading Mode: Auto (WP default), Prefetch, Prerender
- Loading Eagerness: Auto, Conservative, Moderate, Eager
- Exclude Paths: URL patterns to exclude (one per line), e.g.
/cart/*,/checkout/* - Exclude from Prerender: URL patterns excluded only when mode is Prerender
- Save settings
Notes:
- Speculative Loading controls how WordPress preloads links for faster navigation
- Use exclusions for sensitive or personalized pages
Best Practices
- Keep the external link arrow enabled for clear user indication
- Use exclusion classes sparingly to maintain accessibility
- Exclude checkout/profile/dashboard areas from prerendering to avoid side effects
Troubleshooting
- Arrows or labels not appearing:
- Ensure module is enabled and “Disable external link arrow” is off
- Check for exclusion classes on the link or parent elements
- Links not opening in a new tab:
- Confirm the link is external or uses
window.openand is not excluded by class
- Confirm the link is external or uses
- Speculative Loading not changing:
- Make sure your site runs WordPress 6.8+
- Verify Mode/Eagerness and exclusions, then clear caches
Compatibility & Notes
- Enhancements apply to content processed by
the_content - Mailto: and tel: links are never modified
- Internal links are untouched unless they explicitly open in a new tab
- The arrow icon SVG is only printed if at least one link on the page gets an arrow
Developer hooks
- Filter:
WPMazic/link-manager/exclude_classes- Modify the default list of exclusion classes programmatically
This module is perfect for:
- Improving UX clarity for external links
- Enforcing security attributes on outbound links
- Tuning preloading behavior for performance without affecting sensitive pages