{"id":322208,"date":"2026-06-05T07:02:01","date_gmt":"2026-06-05T07:02:01","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/smart-link-checker\/"},"modified":"2026-06-05T07:00:33","modified_gmt":"2026-06-05T07:00:33","slug":"beplus-link-status-scanner","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/beplus-link-status-scanner\/","author":15226952,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.0","requires":"6.0","requires_php":"8.0","requires_plugins":null,"header_name":"Beplus Link Status Scanner","header_author":"rimbeplus","header_description":"Automatically detects broken links in posts and pages, with scheduled scanning and email notifications.","assets_banners_color":"dbdcdf","last_updated":"2026-06-05 07:00:33","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/profiles.wordpress.org\/rimbeplus\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":39,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"rimbeplus","date":"2026-06-05 07:00:33"}},"upgrade_notice":{"1.0.0":"<p>Initial release \u2014 no upgrade steps required.<\/p>"},"ratings":[],"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3561975,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-772x250.png":{"filename":"banner-772x250.png","revision":3561975,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3561975,"resolution":"1","location":"assets","locale":"","width":1904,"height":780}},"screenshots":[]},"plugin_section":[262246],"plugin_tags":[974,14279,14280,252185,186],"plugin_category":[55],"plugin_contributors":[265926],"plugin_business_model":[],"class_list":["post-322208","plugin","type-plugin","status-publish","hentry","plugin_section-dashboard-widgets","plugin_tags-broken-link","plugin_tags-broken-links","plugin_tags-link-checker","plugin_tags-link-monitoring","plugin_tags-seo","plugin_category-seo-and-marketing","plugin_contributors-rimbeplus","plugin_committers-bearsthemes","plugin_committers-rimbeplus"],"banners":{"banner":"https:\/\/ps.w.org\/beplus-link-status-scanner\/assets\/banner-772x250.png?rev=3561975","banner_2x":false,"banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/beplus-link-status-scanner\/assets\/icon-256x256.png?rev=3561975","icon_2x":"https:\/\/ps.w.org\/beplus-link-status-scanner\/assets\/icon-256x256.png?rev=3561975","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/beplus-link-status-scanner\/assets\/screenshot-1.png?rev=3561975","caption":""}],"raw_content":"<!--section=description-->\n<p><strong>Beplus Link Status Scanner<\/strong> scans all your published posts and pages for broken links, redirects, and unreachable URLs. It runs in the background using WordPress Cron so your site performance is never impacted.<\/p>\n\n<h4>Key Features<\/h4>\n\n<ul>\n<li><strong>Automatic background scanning<\/strong> \u2014 Uses WP-Cron to scan posts and check links on a schedule you control.<\/li>\n<li><strong>Broken link report<\/strong> \u2014 A clean admin table listing every broken link: URL, HTTP status code, the post it was found in, and when it was last checked.<\/li>\n<li><strong>Status filters<\/strong> \u2014 Quickly filter links by All, Broken, Redirect, OK, Unchecked, or Ignored.<\/li>\n<li><strong>Bulk actions<\/strong> \u2014 Re-check, ignore, or delete multiple links at once.<\/li>\n<li><strong>Email notifications<\/strong> \u2014 Get a digest email listing new broken links after each cron check run.<\/li>\n<li><strong>Configurable settings<\/strong> \u2014 Set check frequency (daily\/weekly\/monthly), request timeout, links per cron run, and excluded URL patterns.<\/li>\n<li><strong>Dashboard widget<\/strong> \u2014 A quick summary of total, broken, redirect, and OK links on your WordPress dashboard.<\/li>\n<li><strong>Instant re-check<\/strong> \u2014 Re-check any single link immediately from the admin table.<\/li>\n<li><strong>Scan on save<\/strong> \u2014 Newly published or updated posts are scanned immediately when saved.<\/li>\n<\/ul>\n\n<h4>How It Works<\/h4>\n\n<ol>\n<li>When a post is published or updated, Beplus Link Status Scanner extracts all <code>&lt;a href&gt;<\/code> links from the content and stores them in the database.<\/li>\n<li>A scheduled cron job checks each stored link by making an HTTP HEAD request and recording the response code.<\/li>\n<li>Broken links (404, 410, connection errors) are flagged in the admin report.<\/li>\n<li>If email notifications are enabled, you receive a digest email listing newly broken links after each scan.<\/li>\n<\/ol>\n\n<h4>Privacy<\/h4>\n\n<p>Beplus Link Status Scanner sends HTTP requests to external URLs in order to check their status. No personal data is collected or shared.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>smart-link-checker<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> menu in WordPress.<\/li>\n<li>Go to <strong>Settings &gt; Beplus Link Status Scanner<\/strong> to configure scanning frequency and notifications.<\/li>\n<li>Click <strong>Scan Posts Now<\/strong> to run an immediate scan, then <strong>Check Links Now<\/strong> to check their HTTP status.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20slow%20down%20my%20site%3F\"><h3>Does this plugin slow down my site?<\/h3><\/dt>\n<dd><p>No. All scanning and HTTP checking happens through WP-Cron, which runs in the background. The only admin-side actions are when you manually trigger a scan or re-check.<\/p><\/dd>\n<dt id=\"what%20types%20of%20links%20are%20checked%3F\"><h3>What types of links are checked?<\/h3><\/dt>\n<dd><p>Only <code>&lt;a href&gt;<\/code> links in post content are checked. <code>mailto:<\/code>, <code>tel:<\/code>, <code>javascript:<\/code>, and anchor-only <code>#<\/code> links are automatically skipped.<\/p><\/dd>\n<dt id=\"can%20i%20exclude%20certain%20domains%20or%20urls%3F\"><h3>Can I exclude certain domains or URLs?<\/h3><\/dt>\n<dd><p>Yes. Go to <strong>Settings &gt; Beplus Link Status Scanner &gt; Settings<\/strong> and add URL patterns (one per line) to the <strong>Excluded URL Patterns<\/strong> field. Any link containing that pattern will be skipped.<\/p><\/dd>\n<dt id=\"why%20does%20wp-cron%20not%20run%20on%20schedule%3F\"><h3>Why does WP-Cron not run on schedule?<\/h3><\/dt>\n<dd><p>WP-Cron triggers on page loads. On low-traffic sites it may not run on time. For reliable scheduling, disable WP-Cron and add a real system cron job:\n    *\/5 * * * * curl -s https:\/\/yoursite.com\/wp-cron.php?doing_wp_cron &gt; \/dev\/null 2&gt;&amp;1<\/p><\/dd>\n<dt id=\"what%20does%20%22redirect%22%20status%20mean%3F\"><h3>What does \"Redirect\" status mean?<\/h3><\/dt>\n<dd><p>A redirect (301, 302, 307, 308) means the URL has moved. The link still works but you may want to update it to the final destination for SEO.<\/p><\/dd>\n<dt id=\"can%20i%20check%20links%20in%20custom%20fields%20or%20other%20content%20areas%3F\"><h3>Can I check links in custom fields or other content areas?<\/h3><\/dt>\n<dd><p>Version 1.0 checks post content only. Support for custom fields and widget areas is planned for a future release.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>Automatic post scanning on save and via WP-Cron.<\/li>\n<li>Admin report with WP_List_Table, status filters, and bulk actions.<\/li>\n<li>Settings page (frequency, timeout, links per run, excluded patterns, email notifications).<\/li>\n<li>Dashboard widget.<\/li>\n<li>Email digest notification for new broken links.<\/li>\n<\/ul>","raw_excerpt":"Automatically detects broken and redirected links in your posts and pages, with scheduled background scanning and email notifications.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/322208","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=322208"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/bearsthemes"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=322208"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=322208"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=322208"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=322208"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=322208"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=322208"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}