[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fgNz2ETxCw5DAkJiSc45De0_W4RzTwbOPwNcjwdDHe1A":3,"$fT5KjR29dXPlf75c4uQTSA2pZf-apOSBmq1D80OmFvRA":249,"$fVbIQrKEOZOH7BDoSBazm5l0aXqw86eS0cTFJ7AS4Pr8":253},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27,"discovery_status":28,"vulnerabilities":29,"developer":30,"crawl_stats":26,"alternatives":37,"analysis":132,"fingerprints":199},"kandeshop-broken-links-checker","Kandeshop Broken Links Checker","1.4.2","Darren Kandekore","https:\u002F\u002Fprofiles.wordpress.org\u002Fkandeshop\u002F","\u003Cp>The Kandeshop Broken Links Checker is a WordPress plugin designed to identify and list broken or non-functional external links. It scans through your site in batches and organizes links into five tabs:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Cstrong>Broken\u002FUnreachable Links:\u003C\u002Fstrong> Shows all links (internal and external) that return an error (404, 500) or are unreachable (timeout).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Working External Links:\u003C\u002Fstrong> Shows all links that are NOT on your own domain and return a successful status.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Pages Checked:\u003C\u002Fstrong> Lists all posts and pages that have been scanned in your current session.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Guide & Limitations:\u003C\u002Fstrong> A simple “how-to” guide with important warnings about how the plugin works.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Status Code Explanations:\u003C\u002Fstrong> A full explanation of what each error (404, 403, 999, cURL 28) actually means.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>The plugin now intelligently categorizes errors and features a real-time progress indicator that shows you exactly which post is being scanned.\u003C\u002Fp>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Go to the admin dashboard.\u003C\u002Fli>\n\u003Cli>Find the ‘Broken Links’ option in the main menu and click it.\u003C\u002Fli>\n\u003Cli>Read the \u003Cstrong>Guide & Limitations\u003C\u002Fstrong> tab to understand how the plugin works.\u003C\u002Fli>\n\u003Cli>On the ‘Broken Links Checker’ page, set the number of posts\u002Fpages per batch.\u003C\u002Fli>\n\u003Cli>Click the ‘Check Next Batch’ button.\u003C\u002Fli>\n\u003Cli>A real-time progress bar will appear, showing you which post is currently being scanned.\u003C\u002Fli>\n\u003Cli>Results will be added to the appropriate tabs as they are found.\u003C\u002Fli>\n\u003Cli>Click “Clear All Results” to reset the scan and start over.\u003C\u002Fli>\n\u003C\u002Fol>\n","Checks posts and pages in batches to find and list broken external links.",0,167,"2025-11-19T09:30:00.000Z","6.8.5","6.0","7.4",[18,19,20,21,22],"broken-links","checker","http","links","maintenance","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fkandeshop-broken-links-checker.zip",100,null,"2026-04-16T10:56:18.058Z","no_bundle",[],{"slug":31,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":11,"avg_security_score":33,"avg_patch_time_days":34,"trust_score":35,"computed_at":36},"kandeshop",4,96,30,91,"2026-05-19T23:29:55.514Z",[38,60,80,100,116],{"slug":39,"name":40,"version":41,"author":42,"author_profile":43,"description":44,"short_description":45,"active_installs":46,"downloaded":47,"rating":48,"num_ratings":34,"last_updated":49,"tested_up_to":50,"requires_at_least":51,"requires_php":23,"tags":52,"homepage":55,"download_link":56,"security_score":57,"vuln_count":58,"unpatched_count":11,"last_vuln_date":59,"fetched_at":27},"link-checker","Link Checker Professional","1.18.7","Marco Beierer","https:\u002F\u002Fprofiles.wordpress.org\u002Fmbsec\u002F","\u003Cp>The \u003Ca href=\"https:\u002F\u002Fwww.marcobeierer.com\u002Fwordpress-plugins\u002Flink-checker\" rel=\"nofollow ugc\">Link Checker\u003C\u002Fa> for WordPress uses an external service to crawl your website and find broken links and images on your website.\u003C\u002Fp>\n\u003Cp>In contrast to search engine tools like the Google Search Console, which only show if a URL on your website is not reachable, it does not matter for the Link Checker if the links leads to an internal or external URL. The Link Checker will find all dead links.\u003C\u002Fp>\n\u003Cp>The Link Checker works for every plugin out of the box. The computation costs for your website is also very low because the crawler does the heavy work and just acts like a normal visitor, who visits all pages of you website once.\u003C\u002Fp>\n\u003Ch4>Out of service\u003C\u002Fh4>\n\u003Cp>It’s no longer possible to purchase tokens for the Link Checker as of mid-January 2023.\u003C\u002Fp>\n\u003Cp>The service is still available for all users that have already purchased a token and will be shutdown when the last issued token expires mid-January 2024.\u003C\u002Fp>\n\u003Ch4>Paid plugin\u003C\u002Fh4>\n\u003Cp>Please note that the Link Checker requires a paid token to operate. The free version is no longer offered.\u003C\u002Fp>\n\u003Ch4>Videos\u003C\u002Fh4>\n\u003Cp>You can find videos about the Link Checker on the \u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=8rUFDp09tjs&list=PL5VYcNma6nfxIrlbpz0f1avXT_JIrUZA1\" rel=\"nofollow ugc\">Link Checker for WordPress playlist on YouTube\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002F8rUFDp09tjs?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent&listType=playlist&list=PL5VYcNma6nfxIrlbpz0f1avXT_JIrUZA1\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Simple setup\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Works out of the box\u003C\u002Fstrong> with all WordPress plugins.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Low computation costs\u003C\u002Fstrong> for your webserver.\u003C\u002Fli>\n\u003Cli>Lists all broken links and redirects on your website.\u003C\u002Fli>\n\u003Cli>Support for Polylang (probably also WPML) sites.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Technical Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Respects your robots.txt file (also the crawl-delay directive).\n\u003Cul>\n\u003Cli>You can use the user-agents MB-LinkChecker to control the crawler.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Additional Features of the Professional Version\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Check if embedded internal and external \u003Cstrong>images\u003C\u002Fstrong> are broken.\u003C\u002Fli>\n\u003Cli>Check if embedded \u003Cstrong>YouTube videos\u003C\u002Fstrong> are broken.\u003C\u002Fli>\n\u003Cli>Scheduler to \u003Cstrong>automatically check a website\u003C\u002Fstrong> once a day and get a summary report by email.\u003C\u002Fli>\n\u003Cli>The result can be exported as CSV file.\u003C\u002Fli>\n\u003Cli>Form login support to check protected pages like membership areas.\u003C\u002Fli>\n\u003Cli>The result is saved on the Link Checker server so that it can be fetched multiple times without requiring a recheck. For example from different users or with different browsers.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Upcoming Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Support for checking the availability of videos, CSS files and JS files.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Technical Requirements\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Works with \u003Cstrong>PHP 5.6 and 7\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Is the service free of charge?\u003C\u002Fh4>\n\u003Cp>The Link Checker Professional is a paid plugin. A free version was offered for many years, but since August 2022 only a paid version is available.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.marcobeierer.com\u002Fwordpress-plugins\u002Flink-checker-professional\" rel=\"nofollow ugc\">Link Checker Professional\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Use of an External Server\u003C\u002Fh4>\n\u003Cp>The Link Checker uses an external server, operated by the developer of the plugin, to crawl your website and detect broken links. This means, that there is some communication between your website and the server. The only data that is communicated to the external server by your website is the URL of your website and the fact that you are using WordPress. The server than crawlers your website (as a normal visitor does) and answers with a list of the found broken links.\u003C\u002Fp>\n","An easy to use link checker for WordPress to detect broken links and images on your website.",4000,207351,64,"2023-01-14T03:03:00.000Z","6.0.11","4.5",[53,39,21,22,54],"broken-link-checker","seo","https:\u002F\u002Fwww.marcobeierer.com\u002Fwordpress-plugins\u002Flink-checker","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flink-checker.1.18.7.zip",84,1,"2019-03-22 00:00:00",{"slug":61,"name":62,"version":63,"author":64,"author_profile":65,"description":66,"short_description":67,"active_installs":68,"downloaded":69,"rating":25,"num_ratings":70,"last_updated":71,"tested_up_to":72,"requires_at_least":73,"requires_php":74,"tags":75,"homepage":78,"download_link":79,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"external-links-overview","External Links Overview","1.3.0","Christian Ott","https:\u002F\u002Fprofiles.wordpress.org\u002Fseokreativ\u002F","\u003Cp>The “External Links Overview” plugin scans your WordPress posts and pages for outgoing \u003Cstrong>external links\u003C\u002Fstrong> and presents them in a \u003Cstrong>searchable, filterable, and sortable table\u003C\u002Fstrong>. It helps you optimize your outbound link profile and identify broken or potentially harmful links.\u003C\u002Fp>\n\u003Cp>All plugin functions, options, and database entries use the prefix \u003Ccode>seokelo_\u003C\u002Fcode> to prevent conflicts with other plugins.\u003C\u002Fp>\n\u003Cp>👉 \u003Ca href=\"https:\u002F\u002Fwww.seo-kreativ.de\u002Fplugins\u002Fexternal-links-overview\u002F\" rel=\"nofollow ugc\">External Links Overview Plugin Homepage on seo-kreativ.de\u003C\u002Fa>\u003Cbr \u002F>\n💬 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fexternal-links-overview\u002F\" rel=\"ugc\">Get Support on WordPress.org\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cp>✅ Collects and analyzes external links from posts and pages\u003Cbr \u002F>\n✅ Displays a detailed link table with sorting, filtering (e.g. broken links), and search\u003Cbr \u002F>\n✅ Verifies the HTTP status of external links (e.g. 404, 301, timeout)\u003Cbr \u002F>\n✅ Shows \u003Ccode>rel\u003C\u002Fcode> and \u003Ccode>target\u003C\u002Fcode> attributes of each link\u003Cbr \u002F>\n✅ Tracks domain distribution: see which domains you link to most frequently\u003Cbr \u002F>\n✅ CSV export of all link data\u003Cbr \u002F>\n✅ Dashboard widget showing a summary of broken links\u003Cbr \u002F>\n✅ Uses prefix \u003Ccode>seokelo_\u003C\u002Fcode> \u002F \u003Ccode>SEOKELO_\u003C\u002Fcode> for all functions, options, and database entries\u003Cbr \u002F>\n✅ Rescans posts after updates for up-to-date link data\u003Cbr \u002F>\n✅ Clean uninstall: removes plugin data when deleted via WordPress admin\u003C\u002Fp>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Go to \u003Cstrong>External Links \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Collect All External Links\u003C\u002Fstrong> to start the initial scan.  \u003C\u002Fli>\n\u003Cli>Use the \u003Cstrong>Link Table\u003C\u002Fstrong> tab to view, filter, and sort all collected links.  \u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>Check External Links Status\u003C\u002Fstrong> to validate HTTP status codes.  \u003C\u002Fli>\n\u003Cli>Visit the \u003Cstrong>Domain Distribution\u003C\u002Fstrong> tab to analyze your outbound domain profile.  \u003C\u002Fli>\n\u003Cli>Export your data using the \u003Cstrong>Export CSV\u003C\u002Fstrong> button.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This plugin is licensed under the GPLv2 or later.\u003Cbr \u002F>\nSee \u003Ca href=\"https:\u002F\u002Fwww.gnu.org\u002Flicenses\u002Fgpl-2.0.html\" rel=\"nofollow ugc\">https:\u002F\u002Fwww.gnu.org\u002Flicenses\u002Fgpl-2.0.html\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Developer Notes\u003C\u002Fh3>\n\u003Cp>Hooks and filters will be documented in future releases.\u003Cbr \u002F>\nThe plugin uses \u003Ccode>seokelo_\u003C\u002Fcode> as a unique function prefix throughout.\u003C\u002Fp>\n","Analyze, manage, and monitor all external links on your WordPress site. ---",700,3086,2,"2025-09-01T17:14:00.000Z","6.9.4","5.0","7.0",[18,76,39,77,54],"external-links","outbound-links","https:\u002F\u002Fwww.seo-kreativ.de\u002Fplugins\u002Fexternal-links-overview\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fexternal-links-overview.1.3.0.zip",{"slug":81,"name":82,"version":83,"author":84,"author_profile":85,"description":86,"short_description":87,"active_installs":88,"downloaded":89,"rating":90,"num_ratings":32,"last_updated":91,"tested_up_to":92,"requires_at_least":93,"requires_php":94,"tags":95,"homepage":23,"download_link":98,"security_score":99,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"check-for-broken-links","Check for Broken Links","1.0.0","Ilias Chelidonis","https:\u002F\u002Fprofiles.wordpress.org\u002Fthewebcitizencom\u002F","\u003Cp>Check for Broken Links is a lightweight yet powerful WordPress plugin designed to keep your site error-free and optimized. Broken links not only frustrate visitors but also harm your SEO rankings. This plugin scans your entire website—including posts, pages, media, and even custom post types—for dead links and makes it easy to fix them in just a few clicks.\u003C\u002Fp>\n\u003Ch3>Benefits of Using Check for Broken Links\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>Enhance User Experience\u003C\u002Fstrong>\u003Cbr \u002F>\nAutomatically detect and fix broken links to ensure visitors never encounter frustrating dead ends on your site.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Boost SEO Performance\u003C\u002Fstrong>\u003Cbr \u002F>\nEliminate broken links that can hurt your search rankings and keep your site optimized for search engines.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Save Time with Automated Scans\u003C\u002Fstrong>\u003Cbr \u002F>\nSchedule regular, automatic link checks to free yourself from manual monitoring, letting you focus on content.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Simple, User-Friendly Interface\u003C\u002Fstrong>\u003Cbr \u002F>\nManage and repair broken links effortlessly from your WordPress dashboard with clear, actionable reports.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Scans posts, pages, comments, and media files (like images, PDFs, and videos) for broken links, ensuring your entire site stays error-free.\u003C\u002Fli>\n\u003Cli>Provides easy-to-read reports with exact link and media file locations, so you can quickly identify and fix issues.\u003C\u002Fli>\n\u003Cli>Export reports in CSV format for offline review, making it simple to track and manage broken links.\u003C\u002Fli>\n\u003Cli>Exclude specific URLs, domains, or media files from scans to avoid unnecessary alerts on trusted content.\u003C\u002Fli>\n\u003Cli>Customize scan frequency—set it to run daily, weekly, or manually whenever it fits your workflow.\u003C\u002Fli>\n\u003Cli>Get real-time alerts when broken links or media files are detected, allowing you to fix issues before they affect your visitors.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Installation Instructions\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Upload the \u003Ccode>wpcbl-check-for-broken-links\u003C\u002Fcode> folder to the \u003Ccode>\u002Fwp-content\u002Fplugins\u002F\u003C\u002Fcode> directory\u003C\u002Fli>\n\u003Cli>Activate the plugin through the ‘Plugins’ menu in WordPress\u003C\u002Fli>\n\u003Cli>Go to the Check for Broken Links page in the admin menu to start scanning your website for broken links\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Go to the Check for Broken Links page in the admin menu\u003C\u002Fli>\n\u003Cli>Click on the ‘Scan’ tab\u003C\u002Fli>\n\u003Cli>Click on the ‘Export Report in CSV’ button to export the report in CSV format\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This plugin is licensed under the GPL v2 or later.\u003Cbr \u002F>\nFor more details, see: \u003Ca href=\"https:\u002F\u002Fwww.gnu.org\u002Flicenses\u002Fgpl-3.0.html\" rel=\"nofollow ugc\">GPLv3\u003C\u002Fa>\u003C\u002Fp>\n","Check for Broken Links is a WordPress plugin that helps you find and fix broken links on your website.",400,2504,90,"2025-02-09T15:02:00.000Z","6.7.5","5.4","7.3",[18,96,97,39,54],"dead-links","fix-links","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcheck-for-broken-links.1.0.0.zip",92,{"slug":101,"name":102,"version":83,"author":103,"author_profile":104,"description":105,"short_description":106,"active_installs":107,"downloaded":108,"rating":11,"num_ratings":11,"last_updated":109,"tested_up_to":72,"requires_at_least":110,"requires_php":16,"tags":111,"homepage":114,"download_link":115,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"archivarix-broken-links-recovery","Archivarix Broken Links Recovery","Archivarix Support","https:\u002F\u002Fprofiles.wordpress.org\u002Farchivarixsupport\u002F","\u003Cp>Archivarix Broken Links Recovery scans your WordPress content for broken external and internal links and helps you fix them using the Wayback Machine (Web Archive) or manual management.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Key Features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>Multi-level link checking:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>HTTP status codes (4xx, 5xx, timeouts, DNS failures)\u003C\u002Fli>\n\u003Cli>Redirect analysis (different domain, redirect to root)\u003C\u002Fli>\n\u003Cli>Domain parking detection (30+ parking service signatures)\u003C\u002Fli>\n\u003Cli>Content-Type mismatch detection\u003C\u002Fli>\n\u003Cli>Soft 404 detection\u003C\u002Fli>\n\u003Cli>YouTube, Vimeo, TikTok video availability via oEmbed API\u003C\u002Fli>\n\u003Cli>Social network link validation (Twitter, LinkedIn, Instagram, Facebook, Pinterest)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Automatic mode:\u003C\u002Fstrong> Replaces broken links with Web Archive copies using the post date as timestamp. Falls back to removing links when archive is unavailable.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Manual mode:\u003C\u002Fstrong> Full control — review each broken link and choose the action:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Replace with Web Archive copy\u003C\u002Fli>\n\u003Cli>Replace with custom URL\u003C\u002Fli>\n\u003Cli>Remove link (keep anchor text)\u003C\u002Fli>\n\u003Cli>Remove link and anchor text\u003C\u002Fli>\n\u003Cli>Whitelist (ignore and skip in future scans)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Internal link checking:\u003C\u002Fstrong> Validates internal links against WordPress database and HTTP verification.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Background processing:\u003C\u002Fstrong> Scans run in the background without blocking your site.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Scan sources:\u003C\u002Fstrong> Posts, pages, custom post types, comments, custom fields, widgets, Elementor content.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Proxy support:\u003C\u002Fstrong> Configure HTTP proxies for external link checking to avoid rate limiting.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Detailed logs:\u003C\u002Fstrong> Every check and action is logged for review.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Bulk actions:\u003C\u002Fstrong> Fix multiple links at once.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Works great with \u003Ca href=\"https:\u002F\u002Farchivarix.com\u002Fen\u002Fwordpress\u002F\" rel=\"nofollow ugc\">Archivarix External Images Importer\u003C\u002Fa> — this plugin handles links, that plugin handles images.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Available in:\u003C\u002Fstrong> English, Russian (Русский), Spanish (Español).\u003C\u002Fp>\n\u003Cp>For more information, visit the \u003Ca href=\"https:\u002F\u002Farchivarix.com\u002Fen\u002Fblog\u002Fbroken-links-recovery\u002F\" rel=\"nofollow ugc\">plugin page\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>External services\u003C\u002Fh3>\n\u003Cp>This plugin connects to external services to check link availability and find archived copies of broken pages. No personal user data is ever sent — only the URLs found in your WordPress content are transmitted to these services during scans initiated by the site administrator.\u003C\u002Fp>\n\u003Ch4>Wayback Machine (Internet Archive)\u003C\u002Fh4>\n\u003Cp>Used to check if an archived copy of a broken page exists and to build replacement URLs.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Availability API endpoint: \u003Ccode>https:\u002F\u002Farchive.org\u002Fwayback\u002Favailable?url={page_url}&timestamp={date}\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Sends: the broken page URL and the post publication date (as a timestamp hint)\u003C\u002Fli>\n\u003Cli>Called when: checking Wayback availability for broken links (during scan or manual lookup)\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Farchive.org\u002Fabout\u002Fterms\" rel=\"nofollow ugc\">Terms of Use\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Farchive.org\u002Fabout\u002Fterms#702-privacy-policy\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>YouTube oEmbed API\u003C\u002Fh4>\n\u003Cp>Used to verify whether a YouTube video is still available.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Endpoint: \u003Ccode>https:\u002F\u002Fwww.youtube.com\u002Foembed?url={video_url}&format=json\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Sends: the YouTube video URL found in content\u003C\u002Fli>\n\u003Cli>Called when: a YouTube link is encountered during scan\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Ft\u002Fterms\" rel=\"nofollow ugc\">Terms of Service\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpolicies.google.com\u002Fprivacy\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Vimeo oEmbed API\u003C\u002Fh4>\n\u003Cp>Used to verify whether a Vimeo video is still available.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Endpoint: \u003Ccode>https:\u002F\u002Fvimeo.com\u002Fapi\u002Foembed.json?url={video_url}\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Sends: the Vimeo video URL found in content\u003C\u002Fli>\n\u003Cli>Called when: a Vimeo link is encountered during scan\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fvimeo.com\u002Fterms\" rel=\"nofollow ugc\">Terms of Service\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fvimeo.com\u002Fprivacy\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>TikTok oEmbed API\u003C\u002Fh4>\n\u003Cp>Used to verify whether a TikTok video is still available.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Endpoint: \u003Ccode>https:\u002F\u002Fwww.tiktok.com\u002Foembed?url={video_url}\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Sends: the TikTok video URL found in content\u003C\u002Fli>\n\u003Cli>Called when: a TikTok link is encountered during scan\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.tiktok.com\u002Flegal\u002Fterms-of-service\" rel=\"nofollow ugc\">Terms of Service\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.tiktok.com\u002Flegal\u002Fprivacy-policy\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Pinterest oEmbed API\u003C\u002Fh4>\n\u003Cp>Used to verify whether a Pinterest pin or board is still available.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Endpoint: \u003Ccode>https:\u002F\u002Fwww.pinterest.com\u002Foembed.json?url={pin_url}\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Sends: the Pinterest URL found in content\u003C\u002Fli>\n\u003Cli>Called when: a Pinterest link is encountered during scan\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpolicy.pinterest.com\u002Fterms-of-service\" rel=\"nofollow ugc\">Terms of Service\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpolicy.pinterest.com\u002Fprivacy-policy\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Social network link verification\u003C\u002Fh4>\n\u003Cp>The plugin makes HTTP GET requests to social network URLs found in your content to verify they are still accessible. No API keys or authentication tokens are used — only standard browser-like HTTP requests. No data is sent beyond the URL itself.\u003C\u002Fp>\n\u003Cp>Platforms checked: Twitter\u002FX (x.com), LinkedIn (linkedin.com), Instagram (instagram.com), Facebook (facebook.com).\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fx.com\u002Ftos\" rel=\"nofollow ugc\">Twitter\u002FX Terms\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fx.com\u002Fprivacy\" rel=\"nofollow ugc\">Privacy\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.linkedin.com\u002Flegal\u002Fuser-agreement\" rel=\"nofollow ugc\">LinkedIn Terms\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwww.linkedin.com\u002Flegal\u002Fprivacy-policy\" rel=\"nofollow ugc\">Privacy\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fhelp.instagram.com\u002F581066165581870\" rel=\"nofollow ugc\">Instagram Terms\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fprivacycenter.instagram.com\u002Fpolicy\" rel=\"nofollow ugc\">Privacy\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.facebook.com\u002Fterms.php\" rel=\"nofollow ugc\">Facebook Terms\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwww.facebook.com\u002Fprivacy\u002Fpolicy\" rel=\"nofollow ugc\">Privacy\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>General link checking\u003C\u002Fh4>\n\u003Cp>During scans, the plugin makes HTTP GET requests to all external URLs found in your WordPress content (posts, pages, comments, widgets, custom fields) to verify their HTTP status. Only the URL itself is requested — no personal data, cookies, or authentication information is transmitted.\u003C\u002Fp>\n\u003Ch4>httpbin.org (proxy testing)\u003C\u002Fh4>\n\u003Cp>Used solely to test proxy connectivity when the administrator configures proxies in plugin settings.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Endpoint: \u003Ccode>https:\u002F\u002Fhttpbin.org\u002Fip\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Sends: nothing (simple GET request to verify the proxy works)\u003C\u002Fli>\n\u003Cli>Called when: administrator clicks “Test Proxies” in settings\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fhttpbin.org\u002F\" rel=\"nofollow ugc\">httpbin.org\u003C\u002Fa> is an open-source HTTP testing service\u003C\u002Fli>\n\u003C\u002Ful>\n","Finds broken external and internal links and replaces them with Web Archive copies or manages them manually.",200,1573,"2026-03-11T10:56:00.000Z","5.6",[18,96,39,112,113],"wayback-machine","web-archive","https:\u002F\u002Farchivarix.com\u002Fen\u002Fblog\u002Fbroken-links-recovery\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Farchivarix-broken-links-recovery.1.0.0.zip",{"slug":117,"name":118,"version":119,"author":120,"author_profile":121,"description":122,"short_description":123,"active_installs":124,"downloaded":125,"rating":11,"num_ratings":11,"last_updated":126,"tested_up_to":72,"requires_at_least":110,"requires_php":16,"tags":127,"homepage":130,"download_link":131,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"link-diagnostic-and-insights","Link Diagnostics – Broken Links, Redirects, and Link Insights","1.0.2","swiftspeed","https:\u002F\u002Fprofiles.wordpress.org\u002Fswiftspeed\u002F","\u003Cp>Link Diagnostics is a comprehensive link analysis tool that scans your WordPress site for link issues and provides detailed intelligence about your internal linking structure. If you’re serious about SEO and site maintenance, this plugin gives you the visibility you need to keep your links healthy.\u003C\u002Fp>\n\u003Cp>For a detailed feature breakdown, screenshots, and technical overview, see the official\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fswiftspeed.app\u002Flink-diagnostic-and-insights-plugin\u002F\" rel=\"nofollow ugc\">Link Diagnostic and Insights product page\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Why Link Health Matters for SEO\u003C\u002Fh4>\n\u003Cp>Over time, your site accumulates link problems. You delete old posts, change slugs, restructure content. Automated or manual redirect plugins create chains. External sites you have linked to in the past go offline. The result:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Redirect chains that waste crawl budget and slow page speed\u003C\u002Fli>\n\u003Cli>Broken internal links that hurt user experience and rankings\u003C\u002Fli>\n\u003Cli>Orphaned content that search engines can’t discover\u003C\u002Fli>\n\u003Cli>Dead external links that signal poor maintenance\u003C\u002Fli>\n\u003Cli>Inefficient internal linking that fails to pass authority to important pages\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>These issues directly impact your SEO health score in tools like Ahrefs, Semrush, and Screaming Frog. Link Diagnostics helps you fix them systematically.\u003C\u002Fp>\n\u003Ch4>Internal Link Health – The Big Win\u003C\u002Fh4>\n\u003Cp>This is where the plugin delivers maximum value. When you change a URL or delete a post, redirect plugins create a 301 redirect. Fine for visitors, but now you have anchor texts across your site linking to URLs that redirect elsewhere. Every redirect hop wastes crawl budget and dilutes link equity, seo tools detect it and tell you to fix, but then, your site is large, how many do you want to start fixing one after the other? well, that’s why this plugin exists.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>What Link Diagnostics does:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Scans every post and finds anchor texts linking to redirected URLs. You see:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>The post containing the link\u003C\u002Fli>\n\u003Cli>The anchor text used\u003C\u002Fli>\n\u003Cli>The current URL being linked to\u003C\u002Fli>\n\u003Cli>Where that URL redirects to\u003C\u002Fli>\n\u003Cli>The redirect type (301, 302, 307, 308)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Click “Fix” and the plugin updates the anchor’s href to point directly to the final destination. No more redirect chains. Your internal links point exactly where they should.\u003C\u002Fp>\n\u003Cp>For a deeper explanation of how internal redirect chains affect crawl efficiency and SEO performance, refer to the\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fswiftspeed.app\u002Flink-diagnostic-and-insights-plugin\u002F\" rel=\"nofollow ugc\">Link Diagnostic and Insights documentation\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Why this matters:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Preserves crawl budget by eliminating unnecessary redirects\u003C\u002Fli>\n\u003Cli>Passes full link equity directly to target pages\u003C\u002Fli>\n\u003Cli>Improves page speed (fewer redirect hops)\u003C\u002Fli>\n\u003Cli>Boosts SEO health scores dramatically\u003C\u002Fli>\n\u003Cli>Strengthens your internal linking structure\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>This one feature alone can move your site health score from 60% to 90%+ in SEO tools.\u003C\u002Fp>\n\u003Ch4>Other Internal Link Issues Detected\u003C\u002Fh4>\n\u003Cp>Beyond redirects, the plugin finds:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>404 Errors\u003C\u002Fstrong>: Broken internal links where the target page doesn’t exist\u003C\u002Fli>\n\u003Cli>\u003Cstrong>410 Gone\u003C\u002Fstrong>: Links to permanently deleted content\u003C\u002Fli>\n\u003Cli>\u003Cstrong>500 Errors\u003C\u002Fstrong>: Server errors on internal URLs\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Redirect Chains\u003C\u002Fstrong>: Multiple redirect hops before reaching destination\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Each issue shows the source post, anchor text, problematic URL, and HTTP status code. Fix them directly from the admin panel.\u003C\u002Fp>\n\u003Ch4>External Link Error Detection\u003C\u002Fh4>\n\u003Cp>Your outbound links matter too. Link Diagnostics scans external links and reports:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>404 and 410 errors (broken external links)\u003C\u002Fli>\n\u003Cli>5xx server errors (unreliable external sites)\u003C\u002Fli>\n\u003Cli>DNS failures and timeouts (unreachable domains)\u003C\u002Fli>\n\u003Cli>Redirect chains on external URLs\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>You see which posts contain broken external links and can update or remove them to maintain content quality.\u003C\u002Fp>\n\u003Ch4>Link Intelligence – Understand Your Link Structure\u003C\u002Fh4>\n\u003Cp>This is the strategic part. Beyond finding problems, Link Diagnostics analyzes your entire link structure to reveal:\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Most Linked Internal Pages\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>See which pages receive the most internal links. These are your content hubs and authority pages. You can:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Verify your most important pages are well-linked\u003C\u002Fli>\n\u003Cli>Find pages that are over-linked or under-linked\u003C\u002Fli>\n\u003Cli>Identify pillar content opportunities\u003C\u002Fli>\n\u003Cli>Balance internal link distribution\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Each page shows total inbound links and expandable details listing every source post with the exact anchor texts used.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Common Anchor Texts\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Discover which anchor texts you use most frequently. This helps you:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Spot over-optimization (too many exact-match anchors)\u003C\u002Fli>\n\u003Cli>Find opportunities for natural language variation\u003C\u002Fli>\n\u003Cli>Maintain consistency across your content\u003C\u002Fli>\n\u003Cli>Avoid anchor text patterns that look spammy\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>External Domains Analysis\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>See which external sites you link to most often. This reveals:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Your most frequently cited sources\u003C\u002Fli>\n\u003Cli>Over-reliance on specific domains\u003C\u002Fli>\n\u003Cli>Opportunities to diversify external links\u003C\u002Fli>\n\u003Cli>External relationships worth maintaining\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>For each domain, see which posts link to it and what anchor texts are used.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Orphaned Pages\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Find content with zero internal links. These pages are invisible to crawlers and users. Link Diagnostics lists every orphaned page so you can:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Add internal links from relevant content\u003C\u002Fli>\n\u003Cli>Improve site-wide content discovery\u003C\u002Fli>\n\u003Cli>Boost the authority of isolated pages\u003C\u002Fli>\n\u003Cli>Ensure all content is accessible\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>URL Redirect Management\u003C\u002Fh4>\n\u003Cp>Built-in redirect manager handles site restructuring and migrations:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Create 301, 302, 307, and 308 redirects\u003C\u002Fli>\n\u003Cli>Add multiple source URLs to one destination in bulk\u003C\u002Fli>\n\u003Cli>Organize redirects with categories\u003C\u002Fli>\n\u003Cli>Toggle redirects active\u002Finactive without deletion\u003C\u002Fli>\n\u003Cli>Bulk delete operations\u003C\u002Fli>\n\u003Cli>Source URL uniqueness validation prevents conflicts\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Perfect for handling old URLs after site migrations or content reorganization.\u003C\u002Fp>\n\u003Ch4>How Scanning Works\u003C\u002Fh4>\n\u003Cp>Click “Start Scan” on any tab. The plugin:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Queries your published content (posts, pages, custom post types)\u003C\u002Fli>\n\u003Cli>Extracts all links from post content\u003C\u002Fli>\n\u003Cli>Checks each URL via WordPress HTTP API\u003C\u002Fli>\n\u003Cli>Stores results in custom database tables\u003C\u002Fli>\n\u003Cli>Shows progress in real-time\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>Scans are on-demand only. No background processing, no automated changes. You control when to scan and what to fix.\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>Developed by \u003Ca href=\"https:\u002F\u002Fakinolaakeem.com\" rel=\"nofollow ugc\">Àgbà Akin\u003C\u002Fa>\u003Cbr \u002F>\nManaged by \u003Ca href=\"https:\u002F\u002Fswiftspeed.org\" rel=\"nofollow ugc\">Ssu-Technology Limited\u003C\u002Fa>\u003Cbr \u002F>\nProduct documentation and feature overview maintained by\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fswiftspeed.app\u002Flink-diagnostic-and-insights-plugin\u002F\" rel=\"nofollow ugc\">Swiftspeed\u003C\u002Fa>\u003C\u002Fp>\n","Complete link health monitoring for WordPress. Find broken links, fix redirect chains, optimize internal linking, and improve SEO performance.",40,307,"2026-02-05T20:29:00.000Z",[18,128,39,129,54],"internal-links","redirects","https:\u002F\u002Fswiftspeed.org\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flink-diagnostic-and-insights.1.0.2.zip",{"attackSurface":133,"codeSignals":157,"taintFlows":165,"riskAssessment":192,"analyzedAt":198},{"hooks":134,"ajaxHandlers":145,"restRoutes":154,"shortcodes":155,"cronEvents":156,"entryPointCount":70,"unprotectedCount":11},[135,141],{"type":136,"name":137,"callback":138,"file":139,"line":140},"action","admin_menu","kblc_add_admin_menu","broken-linkcheck.php",31,{"type":136,"name":142,"callback":143,"file":139,"line":144},"admin_enqueue_scripts","kblc_admin_enqueue_scripts",186,[146,151],{"action":147,"nopriv":148,"callback":147,"hasNonce":149,"hasCapCheck":148,"file":139,"line":150},"kblc_ajax_get_batch_posts",false,true,235,{"action":152,"nopriv":148,"callback":152,"hasNonce":149,"hasCapCheck":148,"file":139,"line":153},"kblc_ajax_check_links",390,[],[],[],{"dangerousFunctions":158,"sqlUsage":159,"outputEscaping":161,"fileOperations":11,"externalRequests":70,"nonceChecks":70,"capabilityChecks":11,"bundledLibraries":164},[],{"prepared":11,"raw":11,"locations":160},[],{"escaped":162,"rawEcho":11,"locations":163},106,[],[],[166,184],{"entryPoint":167,"graph":168,"unsanitizedCount":11,"severity":183},"kblc_ajax_check_links (broken-linkcheck.php:241)",{"nodes":169,"edges":181},[170,175],{"id":171,"type":172,"label":173,"file":139,"line":174},"n0","source","$_POST",249,{"id":176,"type":177,"label":178,"file":139,"line":179,"wp_function":180},"n1","sink","wp_remote_get() [SSRF]",268,"wp_remote_get",[182],{"from":171,"to":176,"sanitized":149},"low",{"entryPoint":185,"graph":186,"unsanitizedCount":11,"severity":183},"\u003Cbroken-linkcheck> (broken-linkcheck.php:0)",{"nodes":187,"edges":190},[188,189],{"id":171,"type":172,"label":173,"file":139,"line":174},{"id":176,"type":177,"label":178,"file":139,"line":179,"wp_function":180},[191],{"from":171,"to":176,"sanitized":149},{"summary":193,"deductions":194},"The \"kandeshop-broken-links-checker\" plugin v1.4.2 exhibits a strong security posture based on the provided static analysis and vulnerability history.  The plugin demonstrates excellent adherence to secure coding practices, with all detected SQL queries utilizing prepared statements and all output being properly escaped.  Furthermore, the absence of known CVEs and a clean vulnerability history indicate a commitment to maintaining a secure codebase. The limited attack surface, consisting of only two AJAX handlers with apparently robust authentication and nonce checks, further contributes to its good security standing.\n\nWhile the static analysis reveals no critical or high-severity security issues, a minor concern lies in the presence of two external HTTP requests. Without further context on the nature and destination of these requests, there's a theoretical risk of man-in-the-middle attacks or data exfiltration if the target endpoints are compromised or insecure. However, given the overall positive indicators, this is a low-priority concern. The complete lack of capability checks on the entry points is a notable omission that could potentially be exploited in conjunction with other vulnerabilities, though none are apparent in this analysis.",[195],{"reason":196,"points":197},"Missing capability checks on AJAX entry points",5,"2026-04-16T13:49:22.439Z",{"wat":200,"direct":209},{"assetPaths":201,"generatorPatterns":204,"scriptPaths":205,"versionParams":206},[202,203],"\u002Fwp-content\u002Fplugins\u002Fkandeshop-broken-links-checker\u002Fcss\u002Fstyle.css","\u002Fwp-content\u002Fplugins\u002Fkandeshop-broken-links-checker\u002Fjs\u002Fmain.js",[],[203],[207,208],"kandeshop-broken-links-checker\u002Fcss\u002Fstyle.css?ver=","kandeshop-broken-links-checker\u002Fjs\u002Fmain.js?ver=",{"cssClasses":210,"htmlComments":225,"htmlAttributes":227,"restEndpoints":245,"jsGlobals":246,"shortcodeOutput":248},[211,212,213,214,215,216,217,218,219,220,221,222,223,224],"kblc-batch-size","kblc-current-batch","kblc-check-links","kblc-clear-results","kblc-checking-notice","kblc-tabs","kblc-tab-broken","kblc-tab-working","kblc-tab-checked","kblc-tab-guide","kblc-tab-statuscodes","kblc-results-broken","kblc-results-working","kblc-results-checked",[226],"\u003C!-- Add a Nonce field for security -->",[228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244],"id=\"kblc-batch-size\"","id=\"kblc-current-batch\"","id=\"kblc-check-links\"","id=\"kblc-clear-results\"","id=\"kblc-checking-notice\"","id=\"kblc-tabs\"","href=\"#kblc-tab-broken\"","href=\"#kblc-tab-working\"","href=\"#kblc-tab-checked\"","href=\"#kblc-tab-guide\"","href=\"#kblc-tab-statuscodes\"","id=\"kblc-tab-broken\"","id=\"kblc-tab-working\"","id=\"kblc-tab-checked\"","id=\"kblc-tab-guide\"","id=\"kblc-tab-statuscodes\"","name=\"_kblc_nonce\"",[],[247],"window.kblc_check_links_nonce",[],{"error":149,"url":250,"statusCode":251,"statusMessage":252,"message":252},"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fkandeshop-broken-links-checker\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":11,"versions":254},[]]