=== External Links DL ===
Contributors: devlemon
Tags: external links, nofollow, sponsored, noopener, link management
Requires at least: 6.2
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Lightweight control for external WordPress links with new-tab behavior, rel attributes, and domain exclusions.

== Description ==

**External Links DL** gives you simple, transparent control over how external links behave across your WordPress site — without touching your post content permanently.

**What it does**

* Optionally opens external links in a new tab (`target="_blank"`).
* Adds `rel` attributes — `noopener`, `noreferrer`, `nofollow`, `sponsored`, `ugc` — to external links.
* Merges with any `rel` values already present; never removes existing attributes.
* Lets you exclude specific domains from automatic rules.
* Optionally treats subdomains of your own site as internal links.

**What it does not do**

* It does not modify your posts or pages. Rules are applied dynamically when content is displayed.
* It does not add icons, text, or any visible markup.
* It does not track clicks, collect analytics, or contact any external service.
* It does not modify `href` values.

**Technical approach**

External Links DL uses `WP_HTML_Tag_Processor` (WordPress 6.2+) to safely read and modify `<a>` tag attributes. No regex-based HTML parsing is used.

**Privacy**

No visitor data is collected. No external requests are made. The plugin processes content locally on your server.

== Installation ==

1. Upload the `external-links-dl` folder to `/wp-content/plugins/`, or install via the WordPress plugin screen.
2. Activate the plugin.
3. Go to **Settings → External Links DL** to configure.

== Frequently Asked Questions ==

= Does External Links DL modify my posts? =
No. Rules are applied dynamically when content is displayed. Your post content in the database is never changed.

= Does it affect internal links? =
No. Links that point to your own domain are automatically excluded.

= Can I exclude specific domains? =
Yes. Enter one domain per line in the Excluded Domains field. Links to those domains will not receive any automatic rules.

= Does it add nofollow to every external link automatically? =
Only if you explicitly enable that setting. It is disabled by default.

= Does it collect visitor data? =
No. No visitor data, IP addresses, or click events are stored.

= Does it use an external service? =
No. Everything runs locally on your server.

= What happens if I disable the plugin? =
Your original post content remains unchanged. External links will display exactly as they were saved.

= Are subdomains considered internal? =
By default, subdomains of your site (e.g. shop.yourdomain.com) are treated as internal links and do not receive external link rules. You can change this in Settings.

== Screenshots ==

1. External Links DL settings page.
2. External link behavior options.
3. Rel attribute settings.
4. Excluded domains configuration.
5. Active rules summary.

== Changelog ==

= 1.0.0 =
* Initial release.

== Upgrade Notice ==

= 1.0.0 =
Initial release.
