{"id":218038,"date":"2025-01-10T00:15:29","date_gmt":"2025-01-10T00:15:29","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/410-response-manager\/"},"modified":"2026-06-12T12:34:19","modified_gmt":"2026-06-12T12:34:19","slug":"410-response-manager","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/410-response-manager\/","author":23190267,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.2","stable_tag":"1.0.2","tested":"7.0","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"410 Response Manager","header_author":"Rathly","header_description":"Manage 410 Gone responses with manual entries, regex patterns, and CSV import functionality.","assets_banners_color":"f3f4f5","last_updated":"2026-06-12 12:34:19","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/rathly.com\/wordpress-plugins\/410-response-manager\/","header_plugin_uri":"https:\/\/rathly.com\/wordpress-plugins\/410-response-manager\/","header_author_uri":"https:\/\/rathly.com\/services\/web-design\/","rating":0,"author_block_rating":0,"active_installs":60,"downloads":896,"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":"rathly","date":"2025-01-10 00:35:52"},"1.0.1":{"tag":"1.0.1","author":"rathly","date":"2026-06-11 13:57:48"},"1.0.2":{"tag":"1.0.2","author":"rathly","date":"2026-06-12 12:34:19"}},"upgrade_notice":{"1.0.2":"<p>Addresses code review feedback: stronger nonce sanitization and a corrected license file. Upgrade recommended.<\/p>","1.0.1":"<p>Confirms compatibility with WordPress 7.0 and includes a security and guideline review. Upgrade recommended.<\/p>","1.0.0":"<p>Initial release of 410 Response Manager<\/p>"},"ratings":[],"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3219927,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3219927,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3219927,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1","1.0.2"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3219927,"resolution":"1","location":"assets","locale":"","width":2907,"height":1412},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3219927,"resolution":"2","location":"assets","locale":"","width":2903,"height":1408},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3219927,"resolution":"3","location":"assets","locale":"","width":2907,"height":1316},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3219927,"resolution":"4","location":"assets","locale":"","width":2921,"height":1414}},"screenshots":[]},"plugin_section":[],"plugin_tags":[67280,189359,727,186,236714],"plugin_category":[55],"plugin_contributors":[236167],"plugin_business_model":[],"class_list":["post-218038","plugin","type-plugin","status-publish","hentry","plugin_tags-gone","plugin_tags-http-status","plugin_tags-redirect","plugin_tags-seo","plugin_tags-url-management","plugin_category-seo-and-marketing","plugin_contributors-rathly","plugin_committers-rathly"],"banners":{"banner":"https:\/\/ps.w.org\/410-response-manager\/assets\/banner-772x250.png?rev=3219927","banner_2x":"https:\/\/ps.w.org\/410-response-manager\/assets\/banner-1544x500.png?rev=3219927","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/410-response-manager\/assets\/icon-256x256.png?rev=3219927","icon_2x":"https:\/\/ps.w.org\/410-response-manager\/assets\/icon-256x256.png?rev=3219927","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/410-response-manager\/assets\/screenshot-1.png?rev=3219927","caption":""},{"src":"https:\/\/ps.w.org\/410-response-manager\/assets\/screenshot-2.png?rev=3219927","caption":""},{"src":"https:\/\/ps.w.org\/410-response-manager\/assets\/screenshot-3.png?rev=3219927","caption":""},{"src":"https:\/\/ps.w.org\/410-response-manager\/assets\/screenshot-4.png?rev=3219927","caption":""}],"raw_content":"<!--section=description-->\n<p>410 Response Manager provides a robust solution for managing HTTP 410 (Gone) responses in WordPress. Perfect for SEO and proper handling of permanently removed content.<\/p>\n\n<h4>Key Features<\/h4>\n\n<ul>\n<li>Manual URL pattern entry with validation<\/li>\n<li>Regular expression support for dynamic matching<\/li>\n<li>Bulk CSV import\/export functionality<\/li>\n<li>Option to convert 404s to 410s automatically<\/li>\n<li>Custom, SEO-friendly 410 error page<\/li>\n<li>Secure data handling and validation<\/li>\n<\/ul>\n\n<h4>Use Cases<\/h4>\n\n<ul>\n<li>Properly handle removed content for SEO<\/li>\n<li>Manage discontinued products in eCommerce<\/li>\n<li>Handle legacy URLs after site restructuring<\/li>\n<li>Improve crawler efficiency<\/li>\n<li>Maintain clean site structure<\/li>\n<\/ul>\n\n<h4>Pro Tips<\/h4>\n\n<ol>\n<li>Use regex patterns for managing multiple similar URLs<\/li>\n<li>Regularly export your patterns for backup<\/li>\n<li>Monitor 404s to identify candidates for 410s<\/li>\n<li>Use bulk import for large-scale URL management<\/li>\n<\/ol>\n\n<h3>Security<\/h3>\n\n<ul>\n<li>All data is properly sanitized and validated<\/li>\n<li>Nonce verification on all forms and AJAX requests<\/li>\n<li>User capability checks for administrative actions<\/li>\n<li>Safe CSV handling with proper file validation<\/li>\n<li>Secure database operations with prepared statements<\/li>\n<\/ul>\n\n<h3>Privacy Policy<\/h3>\n\n<p>410 Response Manager does not collect, store, or share any personal data. It only manages URL patterns and their corresponding HTTP response codes.<\/p>\n\n<h4>Technical Details<\/h4>\n\n<ul>\n<li>The plugin stores URL patterns in a custom database table<\/li>\n<li>No personal user data is collected or stored<\/li>\n<li>All data is managed locally on your WordPress installation<\/li>\n<li>CSV imports are processed securely and validated<\/li>\n<\/ul>\n\n<h3>Additional Information<\/h3>\n\n<ul>\n<li>For support, visit: <a href=\"https:\/\/rathly.com\/contact-us\/\">Rathly Contact<\/a><\/li>\n<li>Documentation: <a href=\"https:\/\/rathly.com\/wordpress-plugins\/410-response-manager\/\">Plugin Documentation<\/a><\/li>\n<li>GitHub repository: <a href=\"https:\/\/github.com\/harrylaurel\/410-Response-Manager\">GitHub<\/a><\/li>\n<\/ul>\n\n<p>The plugin is actively maintained and tested with the latest versions of WordPress and PHP.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to the <code>\/wp-content\/plugins\/410-response-manager<\/code> directory<\/li>\n<li>Activate the plugin through the 'Plugins' screen in WordPress<\/li>\n<li>Use the '410 Manager' menu item to configure the plugin<\/li>\n<li>Optional: Configure the 404 to 410 conversion setting<\/li>\n<li>Add URL patterns manually or via CSV import<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20is%20a%20410%20gone%20response%3F\"><h3>What is a 410 Gone response?<\/h3><\/dt>\n<dd><p>A 410 Gone response indicates that the requested resource has been intentionally and permanently removed. Unlike a 404 Not Found, it explicitly tells search engines that the content will never return, helping with faster index cleanup.<\/p><\/dd>\n<dt id=\"can%20i%20use%20regular%20expressions%3F\"><h3>Can I use regular expressions?<\/h3><\/dt>\n<dd><p>Yes! Enable the \"Use as Regular Expression\" option when adding URL patterns. This allows for flexible pattern matching like:\n* <code>^\/old-products\/.*<\/code> - Match all URLs starting with \/old-products\/\n* <code>\/discontinued-\\d+<\/code> - Match URLs containing 'discontinued-' followed by numbers<\/p><\/dd>\n<dt id=\"how%20do%20i%20bulk%20import%20urls%3F\"><h3>How do I bulk import URLs?<\/h3><\/dt>\n<dd><ol>\n<li>Prepare a CSV file with two columns: URL pattern and is_regex (0 or 1)<\/li>\n<li>Use the CSV Upload tab in the admin interface<\/li>\n<li>Select your file and click Upload<\/li>\n<li>The plugin will validate and import valid patterns<\/li>\n<\/ol><\/dd>\n<dt id=\"is%20it%20cache-friendly%3F\"><h3>Is it cache-friendly?<\/h3><\/dt>\n<dd><p>Yes, the plugin implements WordPress caching for optimal performance. URL patterns are cached and only refreshed when necessary.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Security: nonce verification now sanitizes the nonce value with sanitize_text_field( wp_unslash() ) in all cases; removed a redundant unsanitized nonce check in the form handler.<\/li>\n<li>Consistency: unslash the AJAX delete ID before casting with absint().<\/li>\n<li>Fixed a license mismatch: LICENSE.txt now contains the GPLv2 text to match the GPLv2 declaration in the plugin header and readme.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Confirmed compatibility with WordPress 7.0.<\/li>\n<li>Reviewed and confirmed security practices: nonce verification, capability checks, prepared statements, output escaping, and validated CSV uploads.<\/li>\n<li>Housekeeping: corrected the GitHub repository link in the readme.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>Manual URL pattern management<\/li>\n<li>Regular expression support<\/li>\n<li>CSV import functionality<\/li>\n<li>Custom 410 error page<\/li>\n<li>Caching implementation<\/li>\n<li>Security enhancements<\/li>\n<\/ul>","raw_excerpt":"Efficiently manage HTTP 410 (Gone) responses with manual entries, regex patterns, and CSV import functionality.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/218038","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=218038"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/rathly"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=218038"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=218038"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=218038"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=218038"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=218038"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=218038"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}