=== RockIt Link Health Monitor ===
Contributors: s1ranand
Tags: link health, dead links, seo, link monitor, site audit
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.1.1
License: GPL-2.0+
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Find broken links on your WordPress site. Background crawling, two-tier checking, filterable results table and email report. No API keys needed.

== Description ==

**RockIt Link Health Monitor** crawls your WordPress site for broken links automatically — no external service, no API keys, no monthly fee.

**How it works:**

* Crawls your site page by page in the background using WP-Cron — no timeout issues on large sites
* Two-tier link checking: full HTTP verification for all standard links, automatic manual-check flag for social/bot-protected domains (Facebook, LinkedIn, Instagram, YouTube, X/Twitter and more)
* Results appear in a filterable admin table — filter by Broken, Manual Check, OK, or search by URL
* Optional email report sent automatically when the crawl finishes
* Export results to CSV at any time

**Key features:**

* No Python, no Playwright, no external dependencies — pure PHP/WordPress
* Background crawling via WP-Cron — leave the page and come back
* Configurable: max pages, external link checking, excluded domains
* One-click CSV export
* Clean, fast admin UI with live progress bar

**Source code:** [https://github.com/s1ranand22/rockit-link-health-monitor](https://github.com/s1ranand22/rockit-link-health-monitor)

== Installation ==

= Option 1: Install from your WordPress dashboard (recommended) =

1. Go to **Plugins → Add New**
2. Search for **RockIt Link Health Monitor**
3. Click **Install Now**, then **Activate**

= Option 2: Upload the plugin zip =

1. Go to **Plugins → Add New → Upload Plugin**
2. Choose the downloaded `rockit-link-health-monitor.zip` and click **Install Now**
3. Click **Activate**

= After activation =

1. Go to **Link Monitor** in your WordPress admin menu
2. Optionally configure settings (max pages, email report address, excluded domains)
3. Click **Start Crawl**
4. Results appear in the table as the crawl progresses

== Frequently Asked Questions ==

= Does this require any API keys or external services? =

No. Everything runs on your WordPress server using standard PHP and WordPress functions.

= Will it slow down my site while crawling? =

Crawling runs in the background via WP-Cron in batches of 10 pages every 30 seconds, so the impact on your site is minimal.

= Why are social media links flagged as "manual-check" instead of broken or OK? =

Sites like Facebook, Instagram, LinkedIn and others block automated HTTP requests and always return an error code — even for perfectly valid links. Flagging them as manual-check rather than broken prevents false positives.

= Can I stop a crawl midway? =

Yes — click **Stop Crawl** at any time. Results so far are preserved in the table.

= How do I exclude certain subdomains? =

Go to **Link Monitor → Settings** and add the domains to exclude, one per line (e.g. `maps.example.com`).

== Screenshots ==

1. Main results table with filter buttons and live crawl progress bar.
2. Settings page — configure max pages, email report, and excluded domains.

== Changelog ==

= 1.1.1 =
* Pro tier: AI-powered broken link fixer with Find Fix, Replace and Remove buttons
* Credit top-up (50 credits for $2) via Paddle with Buy button in Settings
* Monthly credit carry-over on subscription renewal
* Pro upgrade banner in main admin page


= 1.1.0 =
* Pro tier: AI-powered broken link fixer with one-click Replace and Remove
* Replacement lookup: internal links via sitemap.xml + llms.txt, external via redirect follow → Wayback Machine → Claude AI
* Fix applied directly to post/page content in WordPress database
* License key activation in Settings page (Paddle subscription)
* Pro banner and credit counter in admin UI
* Free tier unchanged

= 1.0.0 =
* Initial release

== Upgrade Notice ==

= 1.0.0 =
Initial release.
