=== Squeezy – Safe Automatic Internal Links & SEO Auto Linker ===
Contributors: atristano71
Donate link: https://www.paypal.com/donate/?hosted_button_id=73QT6HP3MCXUG
Tags: internal links, seo, automatic links, content linking, automation
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.3.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Safely automate internal SEO links with wildcard plural matching, per-keyword limits, and page builder support.

== Description ==

Squeezy is a lightweight, high-performance SEO plugin designed to automate internal linking safely, naturally, and efficiently across your WordPress site.

Building a strong internal linking structure is essential for search engine rankings, but manually adding links to past and present content is time-consuming and hard to manage. Squeezy solves this by dynamically injecting internal links into your post body content on-the-fly—without touching or altering your raw database records.

### Key Features:
* **Wildcard Plural Matching (`?`):** Catch singulars, plurals, and variations seamlessly (e.g., `dog?` matches "dog" and "dogs").
* **Strict SEO Thresholds:** Prevent search engine over-optimization penalties using built-in global link caps and per-keyword frequency limits.
* **Smart DOM Shielding:** Automatically bypasses text inside existing links (`<a>`), headings (`<h1>`–`<h6>`), buttons, code blocks, and image attributes.
* **Database Safe:** Links are applied dynamically during page rendering (`the_content` filter), keeping your database clean and unpolluted.
* **Gutenberg & Divi Compatible:** Integrates smoothly with modern block editors and popular page builders (Divi, Elementor, Beaver Builder).
* **Global UX Styling:** Enforce visual consistency across all injected links with optional bolding, underlining, or custom styling.

== Installation ==

1. Upload the `squeezy-safe-automatic-internal-links-seo-auto-linker` folder to the `/wp-content/plugins/` directory, or upload the `.zip` archive via **Plugins > Add New > Upload Plugin**.
2. Activate the plugin through the **Plugins** menu in WordPress.
3. Navigate to **Squeezy SEO** in your WordPress admin menu to configure your keyword rules and global settings.

== Frequently Asked Questions ==

= Does Squeezy modify my actual post content in the database? =
No. Squeezy dynamically injects internal links when content is displayed on the front end. Your original post content stored in the database remains completely untouched.

= Will Squeezy break existing links or headings? =
No. Squeezy uses smart DOM shielding to detect and skip text already inside `<a>` tags, headings (`<h1>`-`<h6>`), code snippets, buttons, and image alt text.

= How does wildcard matching work? =
Adding a `?` at the end of a keyword stem enables flexible matching. For example, `shoe?` matches both "shoe" and "shoes", saving you from creating multiple duplicate rules.

= Can I set a limit on how many links are added per post? =
Yes. You can set both a global maximum link limit per post/page and individual execution caps for each specific keyword rule.

== Screenshots ==

1. Configure keyword rules, wildcard matching (`?`), target URLs, and execution limits in the Squeezy SEO admin manager.
2. Smart DOM shielding safely injects dynamic internal links into front-end post content while protecting existing links and site layout, without changing db data.

== Changelog ==

= 1.3.0 =
* Initial stable release with structured repeater table, wildcard matching, smart DOM shielding, and strict SEO frequency controls.

== Upgrade Notice ==

= 1.3.0 =
Initial stable release. Upgrade to safely automate your WordPress internal linking structure.