IndexLane Broken Link & Redirect Auditor

A WordPress plugin for finding broken internal links, redirects and old URLs left behind after a migration. It shows you where those links are used and takes you to the place where you can edit them.

DownloadVersion 1.1.1
IndexLane Redirect & Internal Link Auditor - main plugin page
IndexLane Redirect & Internal Link Auditor - main plugin page

About IndexLane Broken Link & Redirect Auditor

Finding a broken URL is usually only half the job. Then you have to work out where the thing actually lives. A page? An old menu? A reusable block? That footer template you haven’t opened in six months?

Redirect & Internal Link Auditor connects the problem to its source. You choose which areas to check, and the report shows the affected pages, menus, patterns and supported block templates, with links to their editors. Shared links are traced back to the place where they’re maintained, so you can fix a footer link in the footer.

It checks broken destinations, redirect chains and loops, and links pointing to old or staging domains. It can also flag links whose destination loads but still needs a closer look: a page marked noindex, a canonical pointing elsewhere, or a link to a section that no longer exists.

The saved-scan feature is particularly useful when you’re working through a cleanup. Save the results before making changes, fix the links in WordPress, then run the same checks again. The comparison shows what’s resolved, what’s still there, and whether anything new has appeared. You can export that to CSV if you need to keep a record or send the results to a client.

It checks stored WordPress content and supported areas of the site. Links generated by shortcodes or tucked away in unsupported page-builder data are outside its coverage.

It’s free, open source and runs when you ask it to. You make the edits; the plugin helps you find the problem and check the result.

Release history

Version 1.1.1
  • Fixed suggested-fix batches skipping classic menu custom links. Batch repairs and Undo now include those stored URLs.
  • Fixed overlapping suggestions rewriting an earlier replacement a second time. Each original link is matched once, preserving the reviewed URL pairs and accurate replacement counts.
  • Fixed uneditable suggestions invalidating confirmation of the editable changes in the same batch. Changes to selected URLs or stored values still require a new preview.
  • Corrected the suggested-fix summary to count distinct sources and describe where suggestions were found.
  • Kept query-string comparisons case-sensitive when checking for a trailing-slash difference.
  • Registered the documented wp indexlane fix-suggested command and kept its JSON/CSV output free of human-readable status messages.
  • Updated integration and AJAX tests to validate saved-scan versions against the plugin header instead of a stale 1.0.0 value.

1.1.0 - 2026-10-07

You can now apply grouped fixes, and the scan catches two more links that respond but still point somewhere wrong.

  • Fix the suggested links in one reviewed batch. Every URL with a suggested replacement can be reviewed together, left out individually, and applied as one change. A source that contains several of the suggested URLs is written once, and a single Undo restores the whole batch.
  • Added Page intent checks for a stored link that uses a different scheme than the site address and for a link whose trailing slash differs from the address WordPress serves for it. Both offer a suggested replacement.
  • Kept the repair rules unchanged: only complete link attributes and supported block link settings change, the exact before-and-after values stay in the preview, and a source edited after the preview is skipped.
  • Added wp indexlane fix-suggested so the same reviewed batch can be previewed with --dry-run or applied from a script.

External download

Download 1.1.1
Version 1.0.0

You can now fix links from the results page and schedule checks to catch new problems. Scanning still leaves your content unchanged; repairs need your confirmation.

  • Fix a URL where it is stored. Preview the before-and-after values, then apply the replacement to supported content, menus, Navigation blocks, patterns, templates, and block widgets. Redirect destinations can provide a starting suggestion.
  • Undo recent repairs. The history keeps up to 25 repairs within an 8 MB budget. Undo skips sources edited since the repair, and a partially undone repair can be retried.
  • Set aside known issues. Acknowledge a URL and its current outcome to remove it from the attention count and change notifications. Its evidence stays in the reports.
  • Check on a schedule. Choose hourly, twice-daily, daily, or weekly checks. The first complete check sends a summary; later emails report newly detected or resolved problems. See the latest status on the dashboard and in Site Health.
  • Use WP-CLI. Scan, preview or apply a repair, list recent repairs, and undo from the command line. JSON and CSV scan output can be consumed by scripts.
  • Fixed repairs that could change URL-shaped text in scripts, comments, or unrelated attributes. Repairs now preserve WordPress escaping, count each stored change once, and refuse unsupported source storage.
  • Bound confirmation to the previewed values, saved undo evidence before content writes, and protected the journal from overlapping repairs. Changed content requires a new preview.
  • Fixed partial scans being reported as complete. Incomplete monitoring results no longer mark unseen problems as resolved or replace the last complete comparison. CLI repairs require a complete scan.
  • Renamed the listing to IndexLane Broken Link & Redirect Auditor. The plugin slug, text domain, and existing saved-scan format are unchanged.
  • Rewrote the WordPress description and release notes around the scan, repair, and recheck workflow, with clearer limits.

External download

Download 1.0.0
Version 0.7.0
  • Added destination-intent auditing for internal URLs that respond successfully but declare a different or off-site canonical, noindex, a meta refresh, or a missing linked fragment.
  • Kept transport outcomes dominant and reported file responses, inconclusive fragments, and page/internal nofollow as informational evidence.
  • Reused bounded final-response evidence across link occurrences without extra HTTP requests or retaining response bodies.
  • Added page intent to Problem URLs, Link details, saved-scan comparisons, and CSV exports; retained strict import compatibility with 0.5 and 0.6 saved scans.
  • Fixed literal HTML being mistaken for metadata, exact and numeric fragment matching, partial-response handling, relative canonical bases, Navigation-block rel evidence, and UTF-8 byte limits.
  • Updated the WordPress.org listing, example CSVs, screenshots, walkthrough, release notes, and publishing commands.

External download

Download 0.7.0
Version 0.6.1
  • Reworked the WordPress.org listing and README around migration checks, URL changes, and finding the exact editable source of a link.
  • Added an illustrated scan, save, fix, and recheck walkthrough and direct links to the existing sample CSV reports.
  • Replaced the public screenshots with a small demo showing a broken footer link, its editing location, and a genuine saved-scan comparison after editing the link.
  • Corrected development-build wording and aligned plugin metadata, saved-scan version assertions, and release packaging for 0.6.1.

External download

Download 0.6.1
Version 0.6.0
  • Added independently selectable link-source adapters for normal content, classic menus, Navigation entities, synced patterns, block templates, template parts, and assigned block widgets.
  • Retained each occurrence's stable source identity, source surface, edit and source URLs, link text, and individual-content or site-wide scope alongside the existing HTTP and redirect evidence.
  • Expanded content coverage, problem-URL reports, details, comparisons, and CSV exports with contextual and site-wide counts plus exact editable locations.
  • Added the public indexlane_rila_source_providers filter for bounded third-party stored-source adapters without executing shortcodes, scanning arbitrary metadata, or crawling rendered pages.
  • Upgraded resumable session and portable saved-scan schemas with strict legacy migration, provider availability checks, five-source batches, and a 100,000-source session limit.
  • Reworked the scan form and result wording for non-technical administrators, regenerated the WordPress.org screenshots, and expanded behavioral, integration, translation, and authenticated AJAX coverage.

External download

Download 0.6.0
Version 0.5.1
  • Rewrote the administrator workflow around saved scans, fix checks, results, URLs, link details, and downloads without changing the plugin name or read-only behavior.
  • Put the first scan form before the empty saved-scan panel and current scan progress before saved-scan details.
  • Moved request controls into collapsed advanced settings and moved request accounting, exact settings, schema data, and raw JSON downloads into technical details.
  • Reduced comparison, content-coverage, and problem-URL tables to their primary decisions while retaining HTTP, redirect, final-URL, and before/after data in expandable details.
  • Simplified completed-scan summaries, added correct singular/plural labels, grouped downloads by purpose, and updated CSV headings.
  • Regenerated all WordPress screenshots and expanded behavioral, integration, translation, and authenticated AJAX coverage for the revised interface.

External download

Download 0.5.1
Version 0.5.0
  • Added one opt-in, site-specific baseline per administrator with strict JSON export, import, replacement, and deletion controls.
  • Added exact-scope verification scans bound to the saved baseline revision so fixes can be compared without silently changing scope.
  • Added new, changed, resolved, and still-present issue classifications with explicit before-and-after evidence and a comparison CSV export.
  • Split the plugin implementation into focused admin, scan, report, and baseline modules while preserving the existing runtime class and public behavior.
  • Updated packaging, documentation, screenshots, translation auditing, behavioral tests, WordPress integration tests, and authenticated AJAX coverage for the complete baseline lifecycle.

External download

Download 0.5.0
Version 0.4.0
  • Added destination-oriented content link coverage for every published content item in a completed scan.
  • Added incoming and outgoing link counts, distinct linking sources and destinations, anchor-text variants, self-link counts, and direct-versus-redirected evidence.
  • Added a target detail view and a filter for content with zero or one detected linking source.
  • Resolved redirected links to their final published WordPress content item while retaining the original redirect evidence and making no additional HTTP requests.
  • Added an exact-session target-coverage CSV export, updated screenshots and documentation, and expanded behavioral, integration, translation, and authenticated AJAX coverage.

External download

Download 0.4.0
Version 0.3.1
  • Removed the authenticated AJAX end-to-end harness's undeclared ripgrep dependency so release validation runs on standard GitHub-hosted runners.

External download

Download 0.3.1
Version 0.3.0
  • Replaced the bounded synchronous form request with authenticated, browser-driven WordPress AJAX batches.
  • Added resumable per-administrator scan sessions for all published content or a numeric newest-content limit.
  • Added selection for every registered public post type.
  • Added live progress for content processed, links extracted, unique destinations checked, HTTP requests, and actionable issues.
  • Added pause, continue, cancel, reload recovery, and explicit 250-request allowance extensions.
  • Limited each AJAX batch to five content items and five actual outbound HTTP requests while allowing redirect chains to continue safely across batches.
  • Deduplicated destination requests across the complete session without collapsing occurrence-level evidence.
  • Limited CSV export to exact completed-session evidence and extended temporary per-user session retention to 24 hours of inactivity.
  • Added automatic abandoned-session expiry without cron jobs, custom tables, telemetry, or content changes.
  • Made all plugin-owned administrator, JavaScript, result, warning, and CSV strings translation-ready with literal gettext calls, translator notes, and the WordPress.org slug text domain.
  • Added repeatable source auditing and local POT extraction verification without bundling translations.
  • Added WordPress-loaded integration tests and authenticated AJAX end-to-end coverage.

External download

Download 0.3.0
Version 0.2.2

Release 0.2.2 admin stylesheet compliance

External download

Download 0.2.2
Version 0.2.1
  • Renamed the pre-approval plugin to IndexLane Redirect & Internal Link Auditor and aligned its slug, text domain, runtime identifiers, tests, and package layout.
  • Prepared plugin metadata and packaging for the WordPress.org Plugin Directory.
  • Removed the third-party Update URI so WordPress.org can deliver plugin updates.
  • Declared compatibility testing through WordPress 7.1.
  • Corrected the WordPress.org contributor metadata.
  • Resolved Plugin Check findings for translation loading, nonce verification, translatable labels, and CSV output.
  • Moved the project release history to this root changelog instead of duplicating it in the README.

External download

Download 0.2.1
Version 0.2.0

WPFixPath Redirect & Internal Link Auditor 0.2.0

  • Added a destination-centric impact view for broken/error and redirected targets.
  • Grouped normalized destinations by total link occurrences and distinct affected content
  • items.
  • Preserved HTTP status, redirect-count, effective-final-URL, warning, and result
  • evidence.
  • Added deterministic severity, affected-source, occurrence, and URL ordering.
  • Added a separate destination-impact CSV while preserving the detailed occurrence export.
  • Derived both views from the exact saved scan without additional HTTP requests.
  • Strengthened CSV formula-injection protection.

External download

Download 0.2.0
Version 0.1.3

Release 0.1.3 correctness fixes

External download

Download 0.1.3
Version 0.1.2

Refine README copy for 0.1.2

External download

Download 0.1.2
Version 0.1.1

Release 0.1.1 assets

External download

Download 0.1.1
Version 0.1.0

Initial commit

External download

Download 0.1.0