[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fdvUgqNjMH1R018hLPdSzro57wrQQtw9xsSYSsUxejCI":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":13,"last_updated":14,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":18,"homepage":24,"download_link":25,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28,"vulnerabilities":29,"developer":30,"crawl_stats":27,"alternatives":35,"analysis":146,"fingerprints":419},"custom-404-handler","Custom 404 Handler","1.0.0","jfkconsulting","https:\u002F\u002Fprofiles.wordpress.org\u002Fjfkconsulting\u002F","\u003Cp>This plugin allows you to take full control over how your WordPress site handles 404 (Not Found) errors. Instead of the default theme’s 404 page, you can:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Display a Custom 404 Page:\u003C\u002Fstrong> Choose any published page on your site to serve as your 404 error page.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Log 404 Errors:\u003C\u002Fstrong> Keep track of which URLs are causing 404 errors, including the referring URL, IP address, and user agent. This helps identify broken links or malicious activity.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Analyze Logs:\u003C\u002Fstrong> View statistics like the most frequent 404 URLs and top referrers directly in your WordPress admin.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Create Automatic Redirects:\u003C\u002Fstrong> Easily set up 301 (permanent) or 302 (temporary) redirects for specific 404 URLs to send visitors to the correct content. Track redirect hits.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Export Logs:\u003C\u002Fstrong> Download your 404 error logs as a CSV file for external analysis.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Optionally Redirect All 404s to Homepage:\u003C\u002Fstrong> A simple option to redirect all 404 errors directly to your site’s homepage.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Add \u003Ccode>noindex\u003C\u002Fcode> Tag:\u003C\u002Fstrong> Automatically add a \u003Ccode>noindex, follow\u003C\u002Fcode> meta tag to your 404 pages (custom or default) to prevent search engines from indexing them.\u003C\u002Fli>\n\u003C\u002Ful>\n","Customized 404 page, error logging with analysis, automatic redirects and export functionality.",40,471,0,"2025-05-17T19:26:00.000Z","6.8.5","5.0","7.0",[19,20,21,22,23],"404","custom-404","error","logging","redirect","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcustom-404-handler.1.0.0.zip",100,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":11,"avg_security_score":26,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},1,30,94,"2026-04-04T20:41:57.726Z",[36,61,84,107,123],{"slug":37,"name":38,"version":39,"author":40,"author_profile":41,"description":42,"short_description":43,"active_installs":44,"downloaded":45,"rating":33,"num_ratings":46,"last_updated":47,"tested_up_to":48,"requires_at_least":49,"requires_php":50,"tags":51,"homepage":56,"download_link":57,"security_score":58,"vuln_count":59,"unpatched_count":13,"last_vuln_date":60,"fetched_at":28},"eps-301-redirects","301 Redirects – Redirect Manager","2.83","WebFactory","https:\u002F\u002Fprofiles.wordpress.org\u002Fwebfactory\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Fwp301redirects.com\u002F?ref=wporg\" rel=\"nofollow ugc\">301 Redirects\u003C\u002Fa> helps you manage and create 301, 302, 307 redirects for WordPress site to \u003Cstrong>improve SEO & visitor experience\u003C\u002Fstrong>. 301 Redirects is easy to use. Perfect for new sites or repairing links after reorganizing your old content, or when your site has content that expires and you wish to avoid sending visitors to a 404 error page and want to create redirection instead. Use the 404 error log to identify problematic links & create new redirections.\u003C\u002Fp>\n\u003Cp>301 Redirects GUI is located in WP Admin – Settings – 301 Redirects\u003Cbr \u002F>\n404 Error Log widget can be found in the WP Admin – Dashboard\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Choose from Pages, Posts, Custom Post types, Archives, and Term Archives from dropdown menu to create redirection\u003C\u002Fli>\n\u003Cli>Or, set a custom destination URL!\u003C\u002Fli>\n\u003Cli>Retain query strings across redirects\u003C\u002Fli>\n\u003Cli>Super-fast redirection\u003C\u002Fli>\n\u003Cli>404 error log\u003C\u002Fli>\n\u003Cli>404 error log widget\u003C\u002Fli>\n\u003Cli>Import\u002FExport feature for bulk redirects management\u003C\u002Fli>\n\u003Cli>Simple redirect stats so you know how much a redirection is used\u003C\u002Fli>\n\u003Cli>Fully compatible with translation plugins (Weglot, TranslatePress, Gtranslate, Loco Translate) that use lang prefix in URL\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Need more features?\u003C\u002Fstrong>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwp301redirects.com\u002F?ref=wporg\" rel=\"nofollow ugc\">WP 301 Redirects PRO\u003C\u002Fa> offers wildcard & regular expression URL matching, auto-typo fixing in URLs, complete redirect and 404 log, link scanner, and a centralized SaaS dashboard to monitor redirects on all your sites from one place.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>What is a 301 Redirect?\u003C\u002Fstrong>\u003Cbr \u002F>\nA redirect is a simple way to re-route traffic coming to a \u003Cem>Requested URL\u003C\u002Fem> to different \u003Cem>Destination URL\u003C\u002Fem>.\u003C\u002Fp>\n\u003Cp>A 301 redirect indicates that the page requested has been permanently moved to the \u003Cem>Destination URL\u003C\u002Fem>, and helps pass on the \u003Cem>Requested URLs\u003C\u002Fem> traffic in a search engine friendly manner. Creating a 301 redirect tells search engines that the \u003Cem>Requested URL\u003C\u002Fem>  has moved permanently, and that the content can now be found on the \u003Cem>Destination URL\u003C\u002Fem>. An important feature is that search engines will pass along any clout the \u003Cem>Requested URL\u003C\u002Fem> used to have to the \u003Cem>Destination URL\u003C\u002Fem>.\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\u002F70Yn_lO_8BA?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" 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\u003Cp>\u003Cstrong>When Should I use 301 Redirects?\u003C\u002Fstrong>\u003Cbr \u002F>\n* Replacing an old site design with a new site design\u003Cbr \u002F>\n* Overhauling or re-organizing your existing WordPress content\u003Cbr \u002F>\n* You have content that expires (or is otherwise no longer available) and you wish to redirect users elsewhere\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Is the 404 error log GDPR friendly?\u003C\u002Fstrong>\u003Cbr \u002F>\nThe 404 error log does not collect user IPs. It collects the following data: timestamp of the event, the (404) URL that was opened, and the user-agent string.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Having problems with SSL? Moving a site from HTTP to HTTPS?\u003C\u002Fstrong>\u003Cbr \u002F>\nInstall our free \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-force-ssl\u002F\" rel=\"ugc\">WP Force SSL\u003C\u002Fa> plugin. It’s a great way to enable SSL and fix SSL problems.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>External libraries used in the project\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fdonatj\u002FPhpUserAgent\" rel=\"nofollow ugc\">PHP User Agent Parser\u003C\u002Fa>\u003C\u002Fp>\n","Manage 301 & 302 redirects. Simple redirection & redirects validation. Includes redirect stats & 404 error log.",300000,3616494,575,"2026-01-09T19:14:00.000Z","6.9.4","4.0","5.2",[52,53,23,54,55],"301-redirect","404-error-log","redirection","redirects","https:\u002F\u002Fwp301redirects.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Feps-301-redirects.2.83.zip",98,3,"2023-03-08 00:00:00",{"slug":62,"name":63,"version":64,"author":65,"author_profile":66,"description":67,"short_description":68,"active_installs":69,"downloaded":70,"rating":71,"num_ratings":72,"last_updated":73,"tested_up_to":48,"requires_at_least":74,"requires_php":24,"tags":75,"homepage":79,"download_link":80,"security_score":81,"vuln_count":82,"unpatched_count":13,"last_vuln_date":83,"fetched_at":28},"all-404-redirect-to-homepage","All 404 Redirect to Homepage","5.5","wp-buy","https:\u002F\u002Fprofiles.wordpress.org\u002Fwp-buy\u002F","\u003Cp>By this plugin you can fix all random 404 links appear in you your website and redirect them to homepage or any other page using 301 SEO redirect. 404 error pages hurts the rank of your site in search engines. This smart plugin is a simple solution to handle 404 error pages.\u003C\u002Fp>\n\u003Cp>Elevate your website’s SEO performance and user experience with our Smart 404 Error Fix & Redirect plugin. This powerful tool automatically identifies and manages random 404 errors on your WordPress site, ensuring that broken links and missing pages are seamlessly redirected. By handling these 404 errors with precision, the plugin directs visitors to your homepage or any other specified page, helping to retain your audience and improve site navigation.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Automatic 404 Redirection:\u003C\u002Fstrong> Effortlessly manage broken links and redirect users to relevant pages.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>301 SEO Redirects:\u003C\u002Fstrong> Implement permanent 301 redirects to enhance your website’s SEO ranking and preserve link equity.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Customizable Redirection:\u003C\u002Fstrong> Choose where 404 errors should be redirected – to your homepage, a custom page, or any URL of your choice.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Soft 404 Handling:\u003C\u002Fstrong> Address and manage soft 404 errors effectively.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Broken Link Management:\u003C\u002Fstrong> Detect and fix broken images and links to maintain a smooth user experience.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>HTTPS Support:\u003C\u002Fstrong> Ensure compatibility with HTTPS for secure redirection.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Benefits\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Improved SEO:\u003C\u002Fstrong> Reduce the negative impact of 404 errors on your search engine rankings with effective 301 redirects.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Enhanced User Experience:\u003C\u002Fstrong> Keep visitors engaged by preventing them from encountering error pages.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Easy Setup:\u003C\u002Fstrong> Simple installation and configuration with user-friendly options.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>How to use the plugin?\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>After installing the plugin go to the plugin control panel from settings menu.\u003C\u002Fli>\n\u003Cli>Put the link where the plugin should redirect all 404 links in the text box.\u003C\u002Fli>\n\u003Cli>Select the plugin status to be enabled.\u003C\u002Fli>\n\u003Cli>Click the button Update Options to save the from.\u003C\u002Fli>\n\u003Cli>Go to 404 URLs tab to see the latest 404 links discovered and redirected\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Note\u003C\u002Fstrong>\u003Cbr \u002F>\nPlease make sure than the page you put above in the control panel to redirect all 404 to it is a valid link. If this page is not valid it will be considered as an 404 link and will result in redirect loop. In case of redirect loop you can simply disable the plugin and check the page is valid or not.\u003C\u002Fp>\n","Using this plugin, you can fix all 404 error links by redirecting them to homepage using the SEO 301 redirection. Improve your SEO rank & pages speed",200000,5852016,82,95,"2026-01-10T18:23:00.000Z","4.5",[76,77,54,78],"404-error","broken-images","seo-redirect","https:\u002F\u002Fwww.wp-buy.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fall-404-redirect-to-homepage.5.5.zip",99,2,"2021-06-01 00:00:00",{"slug":85,"name":86,"version":87,"author":88,"author_profile":89,"description":90,"short_description":91,"active_installs":92,"downloaded":93,"rating":94,"num_ratings":95,"last_updated":96,"tested_up_to":48,"requires_at_least":97,"requires_php":98,"tags":99,"homepage":103,"download_link":104,"security_score":72,"vuln_count":105,"unpatched_count":13,"last_vuln_date":106,"fetched_at":28},"404-to-301","404 to 301 – Redirect, Log and Notify 404 Errors","3.1.5","Joel James","https:\u002F\u002Fprofiles.wordpress.org\u002Fjoelcj91\u002F","\u003Cp>If you care about your website, you should take steps to avoid 404 errors as it affects your SEO badly. 404 ( Page not found ) errors are common and we all hate it, even Search engines do the same! Install this plugin then sit back and relax. It will take care of 404 errors!\u003C\u002Fp>\n\u003Ch4>What is 404 to 301?\u003C\u002Fh4>\n\u003Cp>\u003Cem>Handling 404 errors in your site should be easy. With this plugin, it finally is.\u003C\u002Fem>\u003C\u002Fp>\n\u003Cblockquote>\n\u003Ch4>404 to 301 Log Manager – Add-on is now available!\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Instead of instant email alerts, get \u003Cstrong>hourly, twice daily, daily, twice weekly, weekly\u003C\u002Fstrong> alerts.\u003C\u002Fli>\n\u003Cli>Limit the amount of emails sent out based on error logs count.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>PDF file\u003C\u002Fstrong> attachment of error logs will be delivered through the email.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Automatically clear\u003C\u002Fstrong> old error logs based on time period.\u003C\u002Fli>\n\u003Cli>Get email alerts to multiple email recipients.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fduckdev.com\u002Fproducts\u002F404-to-301-log-manager\u002F\" rel=\"nofollow ugc\">Get this add-on now\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fduckdev.com\u002Fdocs\u002F404-to-301-log-manager\u002F\" rel=\"nofollow ugc\">See Docs\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>404 to 301 is a simple but amazing plugin which handles all 404 errors for you. It will redirect all 404 errors to any page that you set, using 301 (or any other) status. That means no more 404 errors! Even in Google webmaster tool you are safe!\u003Cbr \u002F>\nYou will not see any 404 error reports in your webmaster tool dashboard.\u003C\u002Fp>\n\u003Cblockquote>\n\u003Ch4>404 to 301 – Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>You can redirect errors to any existing page or custom link (globally).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>You can set custom redirect for each 404 path!\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>No more 404 errors in your website. Seriously!\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Translation ready!\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>You can optionally monitor\u002Flog all errors.\u003C\u002Fli>\n\u003Cli>Exclude paths from errors.\u003C\u002Fli>\n\u003Cli>You can optionally enable email notification on all 404 errors.\u003C\u002Fli>\n\u003Cli>You can choose which redirect method to be used (301,302,307).\u003C\u002Fli>\n\u003Cli>Will not irritate your visitors if they land on a non-existing page\u002Furl.\u003C\u002Fli>\n\u003Cli>Increase your SEO by telling Google that all 404 pages are moved to some other page.\u003C\u002Fli>\n\u003Cli>Completely free to use with lifetime updates.\u003C\u002Fli>\n\u003Cli>Developer friendly.\u003C\u002Fli>\n\u003Cli>Follows best WordPress coding standards.\u003C\u002Fli>\n\u003Cli>Of course, available in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fjoel-james\u002F404-to-301\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002F404-to-301\u002Finstallation\u002F\" rel=\"ugc\">Installation\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fduckdev.com\u002Fdocs\u002F404-to-301\u002F\" rel=\"nofollow ugc\">Docs\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002F404-to-301\u002Fscreenshots\u002F\" rel=\"ugc\">Screenshots\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp>\u003Cstrong>Bug Reports\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Bug reports for 404 to 301 are always welcome. \u003Ca href=\"https:\u002F\u002Fduckdev.com\u002Fcontact\u002F\" rel=\"nofollow ugc\">Report here\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>More information\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fduckdev.com\u002Fproducts\u002F404-to-301\" rel=\"nofollow ugc\">404 to 301 – Plugin Homepage\u003C\u002Fa>, containing more details and docs.\u003C\u002Fli>\n\u003Cli>Follow the developer \u003Ca href=\"https:\u002F\u002Ftwitter.com\u002FJoel_James\" rel=\"nofollow ugc\">@Twitter\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Other \u003Ca href=\"https:\u002F\u002Fprofiles.wordpress.org\u002Fjoelcj91\u002F#content-plugins\" rel=\"nofollow ugc\">WordPress plugins\u003C\u002Fa> by Joel James for \u003Ca href=\"https:\u002F\u002Fduckdev.com\" rel=\"nofollow ugc\">Duck Dev\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>404 Errors and Redirect – More Details\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>If you are confused with these terms 404,301, redirect etc, \u003Ca href=\"https:\u002F\u002Fmoz.com\u002Flearn\u002Fseo\u002Fredirection\u002F\" rel=\"nofollow ugc\">refer this page\u003C\u002Fa> to know more about the redirect and SEO.\u003C\u002Fp>\n\u003Ch4>Bug Reports\u003C\u002Fh4>\n\u003Cp>Bug reports for 404 to 301 are always welcome. \u003Ca href=\"https:\u002F\u002Fduckdev.com\u002Fcontact\u002F\" rel=\"nofollow ugc\">Report here\u003C\u002Fa>.\u003C\u002Fp>\n","Automatically redirect, log and notify all 404 page errors to any page using 301 redirect for SEO. No more 404 Errors in WebMaster tool.",100000,2076442,92,308,"2025-12-09T13:28:00.000Z","3.5","5.6",[19,100,101,102,78],"404-redirect","custom-404-page","not-found","https:\u002F\u002Fduckdev.com\u002Fproducts\u002F404-to-301\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002F404-to-301.3.1.5.zip",6,"2022-06-07 00:00:00",{"slug":108,"name":109,"version":110,"author":111,"author_profile":112,"description":113,"short_description":114,"active_installs":92,"downloaded":115,"rating":58,"num_ratings":116,"last_updated":117,"tested_up_to":15,"requires_at_least":49,"requires_php":118,"tags":119,"homepage":24,"download_link":121,"security_score":81,"vuln_count":31,"unpatched_count":13,"last_vuln_date":122,"fetched_at":28},"404page","Smart Custom 404 Error Page","11.4.8","NerdPress","https:\u002F\u002Fprofiles.wordpress.org\u002Fnerdpressteam\u002F","\u003Cp>Bringing visitors to your website takes time and effort. Every visitor is important. The default 404 error page of most themes does not provide any information on what to find on your site. A first-time visitor, who does not know you, is left in a dead end and leaves your website. Set up a helpful custom 404 error page to keep them on your site!\u003C\u002Fp>\n\u003Cp>This handy plugin allows you to easily create your own 404 error page without any effort and it works with almost every theme.\u003C\u002Fp>\n\u003Ch3>Out of Retirement!\u003C\u002Fh3>\n\u003Cp>NerdPress has adopted Smart Custom 404 Page! \u003Ca href=\"https:\u002F\u002Fwww.nerdpress.net\u002Fannouncing-404-page\u002F\" rel=\"nofollow ugc\">Read the announcement here.\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>We’ve been fans of this plugin for many years, and we’re grateful for Peter’s many years of service to the community. Peter retired from plugin development in October 2023, so we’ve jumped in to help ensure this plugin continues to work well now and in the future.\u003C\u002Fp>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Cp>Create your custom 404 error page just like any other page using the WordPress Editor (\u003Ccode>Pages > Add New\u003C\u002Fcode>). Then go to \u003Ccode>Appearance > 404 Error Page\u003C\u002Fcode> and select the created page as your custom 404 error page. That’s it!\u003C\u002Fp>\n\u003Ch3>Why use this plugin?\u003C\u002Fh3>\n\u003Cp>Unlike similar plugins the 404page plugin \u003Cstrong>does not create redirects\u003C\u002Fstrong>. That’s \u003Cstrong>quite important\u003C\u002Fstrong> because a correct code 404 is delivered which tells search engines that the page does not exist and has to be removed from the index.\u003C\u002Fp>\n\u003Cp>Additionally, the 404page plugin \u003Cstrong>does not create additional server requests\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Ch3>Requirements\u003C\u002Fh3>\n\u003Cp>The only requirement for this plugin is that you change the Permalink Structure in \u003Ccode>Settings > Permalinks\u003C\u002Fcode> to anything else but “Plain.” This also activates the WordPress 404 error handling.\u003C\u002Fp>\n\u003Ch3>Block & Shortcode\u003C\u002Fh3>\n\u003Ch4>Block\u003C\u002Fh4>\n\u003Cp>The Plugin offers a block “URL causing 404 error” for the block-based editor to show the URL that caused the error. The block offers three display options:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>“Page” to show the page including path ( e.g. \u003Ccode>does\u002Fnot\u002Fexist\u003C\u002Fcode> )\u003C\u002Fli>\n\u003Cli>“Domain Path” to show the URL without protocol and parameters ( e.g. \u003Ccode>example.com\u002Fdoes\u002Fnot\u002Fexist\u003C\u002Fcode> )\u003C\u002Fli>\n\u003Cli>“Full” to show the complete URL ( e.g. \u003Ccode>https:\u002F\u002Fexample.com\u002Fdoes\u002Fnot\u002Fexist?p=1\u003C\u002Fcode> )\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Shortcode\u003C\u002Fh4>\n\u003Cp>The Plugin offers a shortcode “pp_404_url” for the classic editor to show the URL that caused the error. There are three possible options:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>\u003Ccode>[pp_404_url page]\u003C\u002Fcode>\u003C\u002Fstrong> to show the page including path ( e.g. \u003Ccode>does\u002Fnot\u002Fexist\u003C\u002Fcode> )\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ccode>[pp_404_url domainpath]\u003C\u002Fcode>\u003C\u002Fstrong> to show the URL without protocol and parameters ( e.g. \u003Ccode>example.com\u002Fdoes\u002Fnot\u002Fexist\u003C\u002Fcode> )\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ccode>[pp_404_url]\u003C\u002Fcode>\u003C\u002Fstrong> or \u003Cstrong>\u003Ccode>[pp_404_url full]\u003C\u002Fcode>\u003C\u002Fstrong> to show the complete URL ( e.g. \u003Ccode>https:\u002F\u002Fexample.com\u002Fdoes\u002Fnot\u002Fexist?p=1\u003C\u002Fcode> )\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Plugin Privacy Information\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>This plugin does not set cookies\u003C\u002Fli>\n\u003Cli>This plugin does not collect or store any data\u003C\u002Fli>\n\u003Cli>This plugin does not send any data to external servers\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>For developers\u003C\u002Fh3>\n\u003Ch4>Action Hook\u003C\u002Fh4>\n\u003Cp>The plugin adds an action hook \u003Ccode>404page_after_404\u003C\u002Fcode> which you can use to add extra functionality. The exact position the action occurs after an 404 error is detected depends on the Operating Method. Your function must not generate any output. There are no parameters.\u003C\u002Fp>\n\u003Ch4>Constant\u003C\u002Fh4>\n\u003Cp>If the 404page plugin is installed and activated it defines the PHP constant \u003Ccode>PP_404\u003C\u002Fcode>. Check existence of it to detect the 404page plugin.\u003C\u002Fp>\n\u003Ch4>Functions\u003C\u002Fh4>\n\u003Cp>The Plugin provides the following functions:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>\u003Ccode>pp_404_is_active()\u003C\u002Fcode>\u003C\u002Fstrong> to check if there is a custom 404 page selected and the selected page exists\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ccode>pp_404_get_page_id()\u003C\u002Fcode>\u003C\u002Fstrong> to get the ID of the 404 page \u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ccode>pp_404_get_all_page_ids()\u003C\u002Fcode>\u003C\u002Fstrong> to get an array of page IDs in all languages\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ccode>pp_404_get_the_url( $type )\u003C\u002Fcode>\u003C\u002Fstrong> to get the URL that caused the 404 error\n\u003Cul>\n\u003Cli>Parameter $type string Optional\u003C\u002Fli>\n\u003Cli>“page” to get the page including path ( e.g. \u003Ccode>does\u002Fnot\u002Fexist\u003C\u002Fcode> )\u003C\u002Fli>\n\u003Cli>“domainpath” to get the URL without protocol and parameters ( e.g. \u003Ccode>example.com\u002Fdoes\u002Fnot\u002Fexist\u003C\u002Fcode> )\u003C\u002Fli>\n\u003Cli>“full” (default) to get the complete URL ( e.g. \u003Ccode>https:\u002F\u002Fexample.com\u002Fdoes\u002Fnot\u002Fexist?p=1\u003C\u002Fcode> )\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Native Mode\u003C\u002Fh4>\n\u003Cp>If you are a theme developer you can add native support for the 404page plugin to your theme for full control.\u003C\u002Fp>\n","Create a custom 404 error page the easy way! No coding, and no redirects.",2702894,1194,"2025-07-16T22:53:00.000Z","5.4",[19,76,120,20,102],"404-page","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002F404page.11.4.8.zip","2024-10-03 00:00:00",{"slug":124,"name":125,"version":126,"author":127,"author_profile":128,"description":129,"short_description":130,"active_installs":92,"downloaded":131,"rating":132,"num_ratings":133,"last_updated":134,"tested_up_to":48,"requires_at_least":135,"requires_php":136,"tags":137,"homepage":141,"download_link":142,"security_score":143,"vuln_count":144,"unpatched_count":13,"last_vuln_date":145,"fetched_at":28},"simple-301-redirects","Simple 301 Redirects By BetterLinks – Easy WordPress Redirect Manager for Redirects, 404 Error Log & More","2.1.0","WPDeveloper","https:\u002F\u002Fprofiles.wordpress.org\u002Fwpdevteam\u002F","\u003Ch4>Improve Your Website User Experience With Simple 301 Redirects Solution for WordPress\u003C\u002Fh4>\n\u003Cp>Launching a marketing campaign with a new URL? Got “404 not found” errors? Or relaunching your website with a new URL? Let’s redirect your old URLs to new ones automatically by creating 301 redirects to existing pages.\u003C\u002Fp>\n\u003Cp>Simple 301 Redirects provides an easy method of redirecting requests to another page on your site or elsewhere on the web. It’s especially handy when you migrate a site to WordPress and can’t preserve your URL structure.\u003C\u002Fp>\n\u003Cp>By setting up 301 redirects from your old pages to your new pages, any incoming links will be seamlessly passed along, and their page rank (or what-have-you) will be passed along with them.\u003C\u002Fp>\n\u003Cp>\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\u002FF0Zyo2yDoZY?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch3>⭐ FEATURES OF SIMPLE 301 REDIRECTS:\u003C\u002Fh3>\n\u003Cp>◾With this plugin, you can check and redirect your old URLs to the new ones with a few easy steps\u003Cbr \u002F>\n\u003Cstrong>◾\u003C\u002Fstrong> Designed for any website with very easy and user friendly interface which you can set up in few seconds\u003C\u002Fp>\n\u003Cp>◾Works great eCommerce, blog, magazine, small business and any other websites\u003C\u002Fp>\n\u003Ch3>🔰 MANAGE YOUR LINKS WITH SIMPLE 301 REDIRECTS:\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>◾Import Redirect Rules:\u003C\u002Fstrong> You can import redirect links in bulk from your device and upload them using this plugin to manage links\u003C\u002Fp>\n\u003Cp>\u003Cstrong>◾ Export Redirect Rules:\u003C\u002Fstrong> You can also export your 301 Redirect Links in .csv format to use in future\u003C\u002Fp>\n\u003Cp>◾ \u003Cstrong>Wildcards:\u003C\u002Fstrong> It will redirect all files within a directory to the same filename in the redirected directory. To use wildcards, put an asterisk (*) after the folder name that you want to redirect. Example:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Request: \u002Fold-folder\u002F*\u003C\u002Fli>\n\u003Cli>Destination: \u002Fnew-folder\u002F*\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>◾\u003Cstrong>Advanced Analytics:\u003C\u002Fstrong> Easily track and analyze click-through rates of your link redirects with BetterLinks (advanced link management solution by WPDeveloper)\u003C\u002Fp>\n\u003Cp>◾ \u003Cstrong>Friendly Support:\u003C\u002Fstrong> Get super friendly community support as we have an extraordinary support team ready to help you. Ask your questions in the support forum & someone from our team will help you\u003C\u002Fp>\n\u003Ch3>🏆 Featured by Renowned WordPress Publications\u003C\u002Fh3>\n\u003Cp>Simple 301 Redirects has been loved by lots of users, website owners, bloggers and marketers:\u003C\u002Fp>\n\u003Cp>🌟\u003Ca href=\"https:\u002F\u002Fpeakplex.com\u002Fblog\u002Fuse-simple-301-redirects-plugin\u002F\" rel=\"nofollow ugc\">Peakplex\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>“The plugin’s name could not be better. It really is simple to do 301 redirects. For example, if you modify the URL of one of your pages, then you can take the old URL and redirect it to the new one. Not only can this keep some SEO value, but it’s good for user experience as well.”\u003C\u002Fp>\n\u003Cp>🌟\u003Ca href=\"https:\u002F\u002Fwww.wpkube.com\u002Fadd-301-redirects-wordpress\u002F\" rel=\"nofollow ugc\">WPKube\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>“I like this plugin because: You can quickly create 301 redirects without leaving your WordPress dashboard. It makes it much easier to manage your existing 301 redirects. It’s just plain easier for beginners than digging around the .htaccess file.”\u003C\u002Fp>\n\u003Cp>\u003Cstrong>THIS PLUGIN IS MAINTAINED BY THE TEAM\u003C\u002Fstrong> \u003Ca href=\"https:\u002F\u002Fwpdeveloper.net\u002F\" rel=\"nofollow ugc\">WPDeveloper\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwpdeveloper.com\u002Fplugins\u002Fsimple-301-redirects\u002F\" rel=\"nofollow ugc\">ALL FEATURES\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwpdeveloper.com\u002Fdocs-category\u002Fsimple-301-redirects\u002F\" rel=\"nofollow ugc\">DOCUMENTATION\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Need More Advanced Solution for Link Management?\u003C\u002Fh3>\n\u003Cp>Try \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbetterlinks\u002F\" rel=\"ugc\">BetterLinks\u003C\u002Fa> – the advanced link management plugin that simplifies your marketing campaigns by offering a range of powerful features. You can easily shorten links, conduct split tests with dynamic redirects, and check for broken links.\u003Cbr \u002F>\nThe solution also allows you to monitor campaigns using a UTM builder, manage user roles, and analyze click-through rates. Additionally, you can create links without needing admin access and track analytics effortlessly, ensuring your marketing efforts are successful without any hassle.\u003C\u002Fp>\n\u003Cp>\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\u002FZJqBrFhQC1A?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch3>🎁 [FREEBIE] Handful Plugins To Improve Your WordPress Site\u003C\u002Fh3>\n\u003Cp>If you like Simple 301 Redirects, then consider checking out our other WordPress Plugins & take your website to next level:\u003C\u002Fp>\n\u003Cp>🔝\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fessential-addons-for-elementor-lite\u002F\" rel=\"ugc\">\u003Cstrong>Essential Addons For Elementor\u003C\u002Fstrong>\u003C\u002Fa>– Most popular Elementor addons with 1 million active users in the WordPress repository.\u003C\u002Fp>\n\u003Cp>👉 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fessential-blocks\u002F\" rel=\"ugc\">\u003Cstrong>Essential Blocks For Gutenberg\u003C\u002Fstrong>\u003C\u002Fa> – The ultimate blocks library to enhance your Gutenberg web-building experience.\u003C\u002Fp>\n\u003Cp>🔔\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fnotificationx\u002F\" rel=\"ugc\">\u003Cstrong>NotificationX\u003C\u002Fstrong>\u003C\u002Fa>– Best Social Proof & FOMO Marketing Solution to increase conversion rates.\u003C\u002Fp>\n\u003Cp>📝\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbetterdocs\" rel=\"ugc\">\u003Cstrong>BetterDocs\u003C\u002Fstrong>\u003C\u002Fa>– Best Documentation & Knowledge Base Plugin for WordPress, which also reduces your manual support request.\u003C\u002Fp>\n\u003Cp>♾️\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fembedpress\u002F\" rel=\"ugc\">\u003Cstrong>EmbedPress\u003C\u002Fstrong>\u003C\u002Fa> – EmbedPress lets you embed videos, images, posts, audio, maps and all other types of content into your WordPress site with one-click to showcase it beautifully for the visitors.\u003C\u002Fp>\n\u003Cp>☁️\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ftemplately\u002F\" rel=\"ugc\">\u003Cstrong>Templately\u003C\u002Fstrong>\u003C\u002Fa> – Free templates library for Elementor & Gutenberg along with the cloud collaboration for WordPress.\u003C\u002Fp>\n\u003Cp>⏰ \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-scheduled-posts\u002F\" rel=\"ugc\">\u003Cstrong>SchedulePress\u003C\u002Fstrong>\u003C\u002Fa>: Advanced editorial calendar & complete solution for WordPress Post Scheduling, social sharing, missed scheduled alerts and more.\u003C\u002Fp>\n\u003Cp>🛑 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fdisable-comments\u002F\" rel=\"ugc\">\u003Cstrong>Disable Comments\u003C\u002Fstrong>\u003C\u002Fa> – Instantly allow or disallow comments from any post type in WordPress and gain complete control over your full website.\u003C\u002Fp>\n\u003Cp>⚡ \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fthemes\u002Fflexia\u002F\" rel=\"ugc\">\u003Cstrong>Flexia\u003C\u002Fstrong>\u003C\u002Fa>: Most lightweight, customizable & multi purpose theme for WordPress.\u003C\u002Fp>\n\u003Ch3>👨‍💻 DOCUMENTATION AND SUPPORT\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>For documentation and tutorials go to our \u003Ca href=\"https:\u002F\u002Fwpdeveloper.com\u002Fdocs-category\u002Fsimple-301-redirects\u002F\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>For video tutorials go to our \u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fplaylist?list=PLWHp1xKHCfxAfzDOIz0TpDedvy9Z97umL\" rel=\"nofollow ugc\">YouTube Playlist\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>If you have any more questions, visit our support on the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fsimple-301-redirects\u002F\" rel=\"ugc\">Plugin’s Forum\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>For more information about features, FAQs and documentation, check out our \u003Ca href=\"https:\u002F\u002Fwpdeveloper.com\u002Fplugins\u002Fsimple-301-redirects\u002F\" rel=\"nofollow ugc\">website\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>💙 LOVED SIMPLE 301 REDIRECTS?\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\n\u003Cp>Join our \u003Ca href=\"https:\u002F\u002Fwww.facebook.com\u002Fgroups\u002Fwpdeveloper.net\u002F\" rel=\"nofollow ugc\">Facebook Group\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Learn from our tutorial on the YouTube Channel\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>If you love Simple 301 Redirects, \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fsimple-301-redirects\u002Freviews\u002F?filter=5\" rel=\"ugc\">rate us on WordPress\u003C\u002Fa>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Visit \u003Ca href=\"https:\u002F\u002Fwpdeveloper.net\u002F\" rel=\"nofollow ugc\">WPDeveloper\u003C\u002Fa> to learn more about how to do better in WordPress with \u003Ca href=\"https:\u002F\u002Fwpdeveloper.com\u002Fblog\u002F\" rel=\"nofollow ugc\">Help Tutorial, Tips & Tricks\u003C\u002Fa>.\u003C\u002Fp>\n","Simple 301 Redirects provides an easy method of redirecting requests to another page on your site or elsewhere on the web.",2998670,76,162,"2026-02-08T11:37:00.000Z","5.3","7.4",[52,53,138,139,140],"link-shortener","redirect-url","url-redirects","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsimple-301-redirects\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsimple-301-redirects.2.1.0.zip",97,7,"2023-11-13 00:00:00",{"attackSurface":147,"codeSignals":180,"taintFlows":342,"riskAssessment":408,"analyzedAt":418},{"hooks":148,"ajaxHandlers":176,"restRoutes":177,"shortcodes":178,"cronEvents":179,"entryPointCount":13,"unprotectedCount":13},[149,155,159,163,167,171,173],{"type":150,"name":151,"callback":152,"file":153,"line":154},"action","admin_menu","add_admin_menu","custom-404-handler.php",68,{"type":150,"name":156,"callback":157,"file":153,"line":158},"admin_init","register_settings",71,{"type":150,"name":160,"callback":161,"file":153,"line":162},"template_redirect","handle_404",74,{"type":150,"name":164,"callback":165,"file":153,"line":166},"admin_enqueue_scripts","enqueue_admin_scripts",77,{"type":150,"name":168,"callback":169,"file":153,"line":170},"wp_head","closure",274,{"type":150,"name":168,"callback":169,"file":153,"line":172},306,{"type":150,"name":156,"callback":174,"file":153,"line":175},"cust4ha_handle_export",576,[],[],[],[],{"dangerousFunctions":181,"sqlUsage":182,"outputEscaping":204,"fileOperations":82,"externalRequests":13,"nonceChecks":340,"capabilityChecks":59,"bundledLibraries":341},[],{"prepared":183,"raw":183,"locations":184},8,[185,188,191,193,196,198,200,202],{"file":153,"line":186,"context":187},340,"$wpdb->get_var() with variable interpolation",{"file":153,"line":189,"context":190},390,"$wpdb->query() with variable interpolation",{"file":153,"line":192,"context":187},395,{"file":153,"line":194,"context":195},410,"$wpdb->get_results() with variable interpolation",{"file":153,"line":197,"context":195},419,{"file":153,"line":199,"context":195},506,{"file":153,"line":201,"context":195},530,{"file":153,"line":203,"context":195},593,{"escaped":26,"rawEcho":205,"locations":206},73,[207,210,212,214,216,218,220,222,224,226,228,229,231,233,235,237,239,241,243,245,247,249,251,253,255,257,259,261,263,265,266,267,269,271,272,273,275,277,279,281,283,285,287,289,290,292,294,296,298,300,302,304,306,308,310,311,312,314,315,317,319,321,322,324,326,328,329,330,332,334,335,337,338],{"file":208,"line":183,"context":209},"views\\logs-page.php","raw output",{"file":208,"line":211,"context":209},17,{"file":208,"line":213,"context":209},21,{"file":208,"line":215,"context":209},49,{"file":208,"line":217,"context":209},52,{"file":208,"line":219,"context":209},57,{"file":208,"line":221,"context":209},58,{"file":208,"line":223,"context":209},59,{"file":208,"line":225,"context":209},60,{"file":208,"line":227,"context":209},61,{"file":208,"line":132,"context":209},{"file":208,"line":230,"context":209},85,{"file":208,"line":232,"context":209},101,{"file":208,"line":234,"context":209},104,{"file":208,"line":236,"context":209},109,{"file":208,"line":238,"context":209},110,{"file":208,"line":240,"context":209},111,{"file":208,"line":242,"context":209},121,{"file":208,"line":244,"context":209},133,{"file":208,"line":246,"context":209},136,{"file":208,"line":248,"context":209},141,{"file":208,"line":250,"context":209},142,{"file":252,"line":183,"context":209},"views\\redirects-page.php",{"file":252,"line":254,"context":209},13,{"file":252,"line":256,"context":209},19,{"file":252,"line":258,"context":209},23,{"file":252,"line":260,"context":209},28,{"file":252,"line":262,"context":209},34,{"file":252,"line":264,"context":209},37,{"file":252,"line":11,"context":209},{"file":252,"line":215,"context":209},{"file":252,"line":268,"context":209},83,{"file":252,"line":270,"context":209},90,{"file":252,"line":26,"context":209},{"file":252,"line":236,"context":209},{"file":252,"line":274,"context":209},114,{"file":252,"line":276,"context":209},119,{"file":252,"line":278,"context":209},123,{"file":252,"line":280,"context":209},124,{"file":252,"line":282,"context":209},125,{"file":252,"line":284,"context":209},127,{"file":252,"line":286,"context":209},132,{"file":252,"line":288,"context":209},137,{"file":252,"line":248,"context":209},{"file":252,"line":291,"context":209},147,{"file":252,"line":293,"context":209},148,{"file":252,"line":295,"context":209},149,{"file":252,"line":297,"context":209},150,{"file":252,"line":299,"context":209},151,{"file":252,"line":301,"context":209},152,{"file":252,"line":303,"context":209},166,{"file":252,"line":305,"context":209},171,{"file":252,"line":307,"context":209},174,{"file":309,"line":183,"context":209},"views\\settings-page.php",{"file":309,"line":256,"context":209},{"file":309,"line":258,"context":209},{"file":309,"line":313,"context":209},27,{"file":309,"line":32,"context":209},{"file":309,"line":316,"context":209},38,{"file":309,"line":318,"context":209},47,{"file":309,"line":320,"context":209},55,{"file":309,"line":223,"context":209},{"file":309,"line":323,"context":209},66,{"file":309,"line":325,"context":209},69,{"file":309,"line":327,"context":209},78,{"file":309,"line":71,"context":209},{"file":309,"line":230,"context":209},{"file":309,"line":331,"context":209},88,{"file":309,"line":333,"context":209},96,{"file":309,"line":26,"context":209},{"file":309,"line":336,"context":209},103,{"file":309,"line":240,"context":209},{"file":309,"line":339,"context":209},116,5,[],[343,362,375,398],{"entryPoint":344,"graph":345,"unsanitizedCount":13,"severity":361},"display_logs_page (custom-404-handler.php:372)",{"nodes":346,"edges":358},[347,352],{"id":348,"type":349,"label":350,"file":153,"line":351},"n0","source","$_GET",399,{"id":353,"type":354,"label":355,"file":153,"line":356,"wp_function":357},"n1","sink","get_results() [SQLi]",404,"get_results",[359],{"from":348,"to":353,"sanitized":360},true,"low",{"entryPoint":363,"graph":364,"unsanitizedCount":13,"severity":361},"display_redirects_page (custom-404-handler.php:434)",{"nodes":365,"edges":373},[366,369],{"id":348,"type":349,"label":367,"file":153,"line":368},"$_POST",449,{"id":353,"type":354,"label":370,"file":153,"line":371,"wp_function":372},"get_var() [SQLi]",462,"get_var",[374],{"from":348,"to":353,"sanitized":360},{"entryPoint":376,"graph":377,"unsanitizedCount":13,"severity":361},"\u003Ccustom-404-handler> (custom-404-handler.php:0)",{"nodes":378,"edges":394},[379,382,386,388,390,392],{"id":348,"type":349,"label":380,"file":153,"line":381},"$_SERVER",223,{"id":353,"type":354,"label":383,"file":153,"line":384,"wp_function":385},"get_row() [SQLi]",226,"get_row",{"id":387,"type":349,"label":350,"file":153,"line":351},"n2",{"id":389,"type":354,"label":355,"file":153,"line":356,"wp_function":357},"n3",{"id":391,"type":349,"label":367,"file":153,"line":368},"n4",{"id":393,"type":354,"label":370,"file":153,"line":371,"wp_function":372},"n5",[395,396,397],{"from":348,"to":353,"sanitized":360},{"from":387,"to":389,"sanitized":360},{"from":391,"to":393,"sanitized":360},{"entryPoint":399,"graph":400,"unsanitizedCount":31,"severity":407},"handle_404 (custom-404-handler.php:215)",{"nodes":401,"edges":404},[402,403],{"id":348,"type":349,"label":380,"file":153,"line":381},{"id":353,"type":354,"label":383,"file":153,"line":384,"wp_function":385},[405],{"from":348,"to":353,"sanitized":406},false,"high",{"summary":409,"deductions":410},"The \"custom-404-handler\" plugin, version 1.0.0, presents a mixed security posture. On the positive side, it boasts no known vulnerabilities (CVEs) and a seemingly small attack surface with zero AJAX handlers, REST API routes, shortcodes, or cron events. The code also includes a reasonable number of nonce and capability checks, and half of its SQL queries utilize prepared statements, indicating some adherence to secure coding practices.\n\nHowever, concerns arise from the static analysis. While the overall number of entry points is zero, a taint analysis revealed one flow with an unsanitized path, identified as high severity. This indicates a potential for privilege escalation or code injection if this path is reachable by an attacker. Furthermore, 42% of output strings are not properly escaped, which could lead to cross-site scripting (XSS) vulnerabilities. The presence of file operations, even without external HTTP requests, also warrants careful review for potential insecure handling of files.\n\nGiven the lack of historical vulnerabilities, the plugin might have a generally secure codebase. Nevertheless, the identified high-severity taint flow and the significant percentage of unescaped output are critical areas that need immediate attention. Addressing these specific findings is paramount to improving the plugin's security before it becomes a target.",[411,414,416],{"reason":412,"points":413},"High severity taint flow with unsanitized path",12,{"reason":415,"points":144},"Significant portion of output not properly escaped",{"reason":417,"points":59},"File operations present, requires careful review","2026-03-16T22:05:52.401Z",{"wat":420,"direct":429},{"assetPaths":421,"generatorPatterns":424,"scriptPaths":425,"versionParams":426},[422,423],"\u002Fwp-content\u002Fplugins\u002Fcustom-404-handler\u002Fjs\u002Fredirects.js","\u002Fwp-content\u002Fplugins\u002Fcustom-404-handler\u002Fjs\u002Fsettings.js",[],[422,423],[427,428],"custom-404-handler\u002Fjs\u002Fredirects.js?ver=1.0.0","custom-404-handler\u002Fjs\u002Fsettings.js?ver=1.0.0",{"cssClasses":430,"htmlComments":431,"htmlAttributes":432,"restEndpoints":433,"jsGlobals":434,"shortcodeOutput":435},[],[],[],[],[],[]]