{"id":381172,"date":"2026-10-11T04:56:47","date_gmt":"2026-10-11T04:56:47","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/nr-closed-abandoned-alert\/"},"modified":"2026-10-11T04:56:22","modified_gmt":"2026-10-11T04:56:22","slug":"atelixo-closed-abandoned-alert","status":"publish","type":"plugin","link":"https:\/\/ewe.wordpress.org\/plugins\/atelixo-closed-abandoned-alert\/","author":23554989,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.3","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Atelixo Closed & Abandoned Alert","header_author":"Atelixo","header_description":"Flags installed plugins that were closed on WordPress.org or have not been updated in over 2 years, on the Plugins screen and in Site Health.","assets_banners_color":"","last_updated":"2026-10-11 04:56:22","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":40,"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":"nicognito23","date":"2026-10-11 04:56:22","revision":3738910}},"upgrade_notice":[],"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[271495,285649,275769,600,151481],"plugin_category":[54],"plugin_contributors":[277758],"plugin_business_model":[],"class_list":["post-381172","plugin","type-plugin","status-publish","hentry","plugin_tags-abandoned-plugins","plugin_tags-closed-plugin","plugin_tags-outdated-plugins","plugin_tags-security","plugin_tags-site-health","plugin_category-security-and-spam-protection","plugin_contributors-nicognito23","plugin_committers-nicognito23"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/atelixo-closed-abandoned-alert.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>WordPress shows a plugin that was closed on WordPress.org as if it were simply up to date: no update arrives, no warning is shown. The same goes for plugins that have not been updated in years.<\/p>\n\n<p>Atelixo Closed &amp; Abandoned Alert fixes that, with no settings to configure:<\/p>\n\n<ul>\n<li><strong>Plugins screen<\/strong>: a short warning under each plugin that was <strong>closed<\/strong> on WordPress.org (with the closure date and reason when available) or <strong>abandoned<\/strong> (no update in over 2 years), with a link to its WordPress.org page.<\/li>\n<li><strong>Site Health<\/strong>: a \"Closed or abandoned plugins\" test. Critical if a closed plugin is installed, recommended if an abandoned one is.<\/li>\n<li><strong>No false alerts<\/strong>: a plugin is only flagged when WordPress.org clearly says so. Network errors, timeouts or unexpected answers never produce an alert, and the last known status is kept.<\/li>\n<li><strong>Your consent first<\/strong>: nothing is sent to WordPress.org until an administrator clicks <strong>Enable checks<\/strong>, and checks can be stopped at any time.<\/li>\n<li><strong>Lightweight<\/strong>: checks run in the background once a day. Nothing is requested from WordPress.org while pages load, and no CSS or JavaScript is added.<\/li>\n<\/ul>\n\n<p>Plugins that are not hosted on WordPress.org (premium plugins, plugins with a third-party <code>Update URI<\/code>), must-use plugins and drop-ins are not tracked and never show a warning.<\/p>\n\n<h4>Enable, recheck, stop<\/h4>\n\n<p>After activation, a notice on the Plugins screen explains what will be sent and offers an <strong>Enable checks<\/strong> button. Once enabled, the plugin's row offers:<\/p>\n\n<ul>\n<li><strong>Recheck now<\/strong>: schedules a new check in the background. Results appear within a few minutes.<\/li>\n<li><strong>Stop checks<\/strong>: removes the scheduled checks and deletes the stored results. Nothing more is sent until checks are enabled again.<\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to the WordPress.org Plugins API (<code>https:\/\/api.wordpress.org\/plugins\/info\/1.2\/<\/code>) to find out whether each installed plugin is still available on WordPress.org, was closed, and when it was last updated.<\/p>\n\n<ul>\n<li><strong>Consent<\/strong>: no request is made and no check is scheduled until an administrator (a user who can activate plugins) clicks <strong>Enable checks<\/strong> in the notice shown on the Plugins screen after activation. <strong>Stop checks<\/strong> on the plugin's row (or deactivating the plugin) withdraws this consent: scheduled checks are removed and stored results are deleted.<\/li>\n<li><strong>What is sent<\/strong>: the slug (folder name) of each installed plugin, one request per plugin, along with the standard WordPress HTTP headers (WordPress version and site URL in the user agent). No personal data is sent.<\/li>\n<li><strong>When<\/strong>: only while checks are enabled, in the background via WP-Cron: right after <strong>Enable checks<\/strong>, then once a day, after a plugin is installed or updated (new plugins only), and when an administrator clicks <strong>Recheck now<\/strong>. Never while a page loads.<\/li>\n<li><strong>Not sent<\/strong>: plugins with an <code>Update URI<\/code> header pointing outside WordPress.org, must-use plugins and drop-ins.<\/li>\n<\/ul>\n\n<p>This service is provided by WordPress.org: <a href=\"https:\/\/wordpress.org\/about\/tos\/\">Terms of Service<\/a>, <a href=\"https:\/\/wordpress.org\/about\/privacy\/\">Privacy Policy<\/a>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin to <code>\/wp-content\/plugins\/<\/code> or install it from the Plugins screen.<\/li>\n<li>Activate it.<\/li>\n<li>On the Plugins screen, read the notice and click <strong>Enable checks<\/strong>. The first check runs in the background within a few minutes. There is nothing else to configure.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"why%20is%20nothing%20checked%20right%20after%20activation%3F\"><h3>Why is nothing checked right after activation?<\/h3><\/dt>\n<dd><p>The plugin waits for your consent: click <strong>Enable checks<\/strong> in the notice on the Plugins screen. Checks then run in the background through WP-Cron, a few plugins at a time. On a site with many plugins, the first full check can take several minutes.<\/p><\/dd>\n<dt id=\"my%20site%20uses%20disable_wp_cron\"><h3>My site uses DISABLE_WP_CRON<\/h3><\/dt>\n<dd><p>Checks only run when WP-Cron runs. If <code>DISABLE_WP_CRON<\/code> is set, make sure a real system cron calls <code>wp-cron.php<\/code> (or runs <code>wp cron event run --due-now<\/code>) regularly, otherwise results will not be refreshed and \"Recheck now\" will wait for the next cron run.<\/p><\/dd>\n<dt id=\"why%20is%20one%20of%20my%20plugins%20never%20flagged%3F\"><h3>Why is one of my plugins never flagged?<\/h3><\/dt>\n<dd><p>Only plugins hosted on WordPress.org can be tracked. When the plugin cannot be confirmed as the WordPress.org one (for example a custom plugin whose folder name matches a WordPress.org slug but whose name differs), it is deliberately left untracked to avoid a false alert.<\/p><\/dd>\n<dt id=\"who%20sees%20the%20warnings%3F\"><h3>Who sees the warnings?<\/h3><\/dt>\n<dd><p>Users who can activate plugins (<code>activate_plugins<\/code>).<\/p><\/dd>\n<dt id=\"does%20it%20work%20on%20wordpress%20multisite%3F\"><h3>Does it work on WordPress Multisite?<\/h3><\/dt>\n<dd><p>Multisite is not officially supported in version 1.0 and has not been tested. Use it on single-site installations.<\/p><\/dd>\n<dt id=\"what%20is%20removed%20on%20deactivation%2C%20%22stop%20checks%22%20and%20uninstall%3F\"><h3>What is removed on deactivation, \"Stop checks\" and uninstall?<\/h3><\/dt>\n<dd><p>The same in all three cases: the stored results, the consent setting, the lock transient and all scheduled events. After reactivation, checks must be enabled again.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First release.<\/li>\n<\/ul>","raw_excerpt":"A badge on closed or abandoned plugins, right in your Plugins list and in Site Health.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ewe.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/381172","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ewe.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ewe.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ewe.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=381172"}],"author":[{"embeddable":true,"href":"https:\/\/ewe.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/nicognito23"}],"wp:attachment":[{"href":"https:\/\/ewe.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=381172"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ewe.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=381172"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ewe.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=381172"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ewe.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=381172"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ewe.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=381172"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ewe.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=381172"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}