Directory / plugin
LinkSolva – Broken Link Checker
v1.0.21 · by shahidirfan100
Find broken links, redirects, and missing images locally with evidence, safe retries, and auditable repairs.
About this plugin
LinkSolva – Broken Link Checker is a local WordPress tool for administrators who need to know what is genuinely broken before changing content.
It discovers URLs in public posts, pages, public custom post types, approved comments, custom navigation menus, featured images, and optionally scalar custom-field or page-builder data. Findings are grouped by normalized URL, and every matching source location is retained. A check may make more than one HTTP request when it follows redirects or needs a limited GET fallback after HEAD.
The plugin classifies results instead of treating every failed request as a dead link:
- Healthy: a successful response was received.
- Redirect: the destination works but reaches another URL.
- Broken: HTTP 404 or 410 provides strong evidence that the destination no longer exists.
- Blocked: the destination rejected automated verification, such as HTTP 401 or 403.
- Rate Limited: the destination returned HTTP 429 and should be checked later.
- Temporary Error: the destination returned a 5xx response.
- SSL Error, DNS Error, Timeout, or Unverified: the scanner could not establish enough evidence to call the URL broken.
Every result includes request history, redirect chain, response time, confidence, explanation, and source locations.
Completed and stopped scan results can be kept locally for later review. Choose to retain 5, 10, or 25 runs, or turn history off. Saved runs include their URL results and source locations; stopped runs are marked incomplete. The oldest saved run is removed when the selected limit is exceeded. On upgrade, the latest completed run is saved from the findings still stored by the plugin. Results overwritten by earlier scans cannot be restored.
Local by design
- No cloud account.
- No link credits or usage limits imposed by a third party.
- No telemetry, advertising, or developer tracking.
- No URLs or site content are sent to a developer service.
- HTTP requests are made from your WordPress server to the destinations found in your content.
Safe repairs
Supported post content, approved comment content, and custom menu URLs can be replaced, unlinked, or marked nofollow. Builder metadata is read-only in this release. Each repair stores the complete before and after source, the user, time, operation, and checksums. Undo is blocked when the source changed after the repair.
Resource controls
Scanning runs in small resumable worker requests. The scanner checks discovered URLs in small batches as it continues finding more. During discovery, the percentage shows the share of URLs found so far that have been checked; it can change as new URLs are found. Repeated occurrences do not re-queue a settled URL. Only one worker request processes the scan at a time. Worker duration follows PHP’s execution-time limit. Batch size and parallel requests adjust to available PHP memory; no more than four URLs are checked at once. URLs wait for another worker when too little time remains to start a check. Timeouts are retried up to the configured limit; URLs that remain inconclusive are shown for review. Hosting execution limits can shorten the effective request timeout. PHP does not reliably expose shared-host CPU quotas, so the plugin uses conservative concurrency limits rather than claiming to measure CPU availability. Manual scanning remains available when WordPress cron is delayed.
Privacy
This plugin does not create a remote account or transmit data to the developer. The server running WordPress may make requests to external URLs found in your content. The request destination, response status, timing, and limited diagnostic categories are stored in your WordPress database.
Limitations
- Some websites intentionally reject automated verification. A successful browser visit cannot always be reproduced by a server-side request.
- Redirects to private, loopback, link-local, metadata, or otherwise reserved addresses are stopped for SSRF protection.
- Structured page-builder data is review-only until a source-specific safe editor is available.
- WordPress cron may be delayed or disabled by hosting configuration. The findings screen provides manual worker progress.