{"id":402463,"date":"2026-11-13T18:14:51","date_gmt":"2026-11-13T18:14:51","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/myw-maintenance-mode\/"},"modified":"2026-11-13T18:14:24","modified_gmt":"2026-11-13T18:14:24","slug":"myw-maintenance-mode","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/myw-maintenance-mode\/","author":23602877,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.1.4","stable_tag":"0.1.4","tested":"7.1.4","requires":"6.0","requires_php":"8.3","requires_plugins":null,"header_name":"MYW Maintenance Mode","header_author":"MYW.it","header_description":"A lightweight maintenance mode plugin with customizable content and administrator-only access.","last_updated":"2026-11-13 18:14:24","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/myw.it\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":35,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.1.4":{"tag":"0.1.4","author":"mywdotit","date":"2026-11-13 18:14:24","revision":3800975}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3801079,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3801079,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3801079,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3801079,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.1.4"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[802,732,1281,733],"plugin_category":[52],"plugin_contributors":[292624],"plugin_business_model":[],"class_list":["post-402463","plugin","type-plugin","status-publish","hentry","plugin_tags-coming-soon","plugin_tags-maintenance","plugin_tags-maintenance-mode","plugin_tags-under-construction","plugin_category-performance","plugin_contributors-mywdotit","plugin_committers-mywdotit"],"banners":{"banner":"https:\/\/ps.w.org\/myw-maintenance-mode\/assets\/banner-772x250.png?rev=3801079","banner_2x":"https:\/\/ps.w.org\/myw-maintenance-mode\/assets\/banner-1544x500.png?rev=3801079","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/myw-maintenance-mode\/assets\/icon-128x128.png?rev=3801079","icon_2x":"https:\/\/ps.w.org\/myw-maintenance-mode\/assets\/icon-256x256.png?rev=3801079","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>MYW Maintenance Mode provides a simple, self-hosted maintenance page without external services, frameworks or third-party libraries.<\/p>\n\n<p>Features:\n* Enable or disable maintenance mode from the plugin settings.\n* Preview the configured maintenance page in a new tab, even when maintenance mode is disabled. The preview uses the same HTTP response code and Retry-After header as the live maintenance page.\n* Toggle maintenance mode directly from the WordPress admin bar.\n* Always allow the WordPress backend and logged-in administrators with the <code>manage_options<\/code> capability.\n* Choose whether AJAX, WP-Cron, the REST API, XML-RPC and the WordPress login remain accessible during maintenance.\n* Customize the page title, logo, background image and page colors.\n* Choose between translated default maintenance text and custom content.\n* Edit all custom page content in one built-in WordPress editor, with visual and HTML modes and text color controls.\n* Choose HTTP 503 (recommended) or HTTP 200 (not recommended).\n* Enable or disable the <code>Retry-After<\/code> header and configure its value.\n* Optionally enable a public path allowlist; it is disabled by default.\n* Configure an allowlist of public paths, with <code>\/favicon.ico<\/code> suggested as the initial entry.\n* Automatically clear the cache of supported active cache plugins when maintenance mode is enabled or disabled.\n* Use WordPress.org's translation system for localized plugin strings.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>myw-maintenance-mode<\/code> directory to the <code>\/wp-content\/plugins\/<\/code> directory, or install the ZIP through the WordPress Plugins screen.<\/li>\n<li>Activate the plugin through the 'Plugins' screen in WordPress.<\/li>\n<li>Open 'Settings' &gt; 'MYW Maintenance Mode'.<\/li>\n<li>Customize the maintenance page and enable maintenance mode.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"who%20can%20browse%20the%20site%20while%20maintenance%20mode%20is%20enabled%3F\"><h3>Who can browse the site while maintenance mode is enabled?<\/h3><\/dt>\n<dd><p>Only logged-in users with the <code>manage_options<\/code> capability can browse the site normally. Other visitors receive the maintenance page.<\/p><\/dd>\n<dt id=\"which%20cache%20plugins%20are%20supported%3F\"><h3>Which cache plugins are supported?<\/h3><\/dt>\n<dd><p>When cache plugin support is enabled, MYW Maintenance Mode detects and requests a cache purge from supported active plugins: W3 Total Cache, WP Rocket, LiteSpeed Cache, WP Super Cache, WP Fastest Cache and Cache Enabler. It does not directly purge server-level or external caches such as Varnish, Nginx FastCGI Cache or CDNs, nor persistent object caches such as Redis or Memcached. No additional plugin or external service is required.<\/p><\/dd>\n<dt id=\"how%20does%20the%20path%20allowlist%20work%3F\"><h3>How does the path allowlist work?<\/h3><\/dt>\n<dd><p>The allowlist is disabled by default. Enable it to allow selected requests through during maintenance. Add one site-root-relative path per line in the settings; <code>\/favicon.ico<\/code> is suggested as the initial entry:\n* <code>\/favicon.ico<\/code> allows that exact path.\n* <code>\/wp-content\/uploads\/maintenance\/<\/code> allows requests below that directory.<\/p>\n\n<p>Paths without a trailing slash are exact matches. Paths ending in a slash allow requests whose paths begin with that directory path.<\/p><\/dd>\n<dt id=\"which%20requests%20can%20remain%20accessible%20during%20maintenance%3F\"><h3>Which requests can remain accessible during maintenance?<\/h3><\/dt>\n<dd><p>The WordPress backend and logged-in administrators with the <code>manage_options<\/code> capability are always allowed. You can independently allow or block AJAX, WP-Cron, the REST API, XML-RPC and the WordPress login from the maintenance exceptions setting. Allowed request types continue normally; blocked request types receive the configured maintenance response.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20protect%20uploaded%20files%3F\"><h3>Does the plugin protect uploaded files?<\/h3><\/dt>\n<dd><p>No. The allowlist controls requests handled by WordPress. Files served directly by the web server, including files in the uploads directory, may bypass WordPress and need separate server-level access rules if they must be private.<\/p><\/dd>\n<dt id=\"how%20do%20i%20translate%20the%20plugin%3F\"><h3>How do I translate the plugin?<\/h3><\/dt>\n<dd><p>The text domain is <code>myw-maintenance-mode<\/code>. The plugin uses WordPress translation loading. The <code>languages\/myw-maintenance-mode.pot<\/code> file is the English translation template. Translations are managed through translate.wordpress.org. The default maintenance messages are translated with the plugin. Custom content is displayed exactly as entered in the editor and is not automatically translated.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.1.4<\/h4>\n\n<ul>\n<li>Added configurable exceptions for AJAX, WP-Cron, the REST API, XML-RPC and the WordPress login.<\/li>\n<li>Kept the WordPress backend and administrator access always available.<\/li>\n<\/ul>\n\n<h4>0.1.3<\/h4>\n\n<ul>\n<li>Added an administrator-only maintenance page preview that uses the configured HTTP response code and Retry-After header.<\/li>\n<\/ul>\n\n<h4>0.1.2<\/h4>\n\n<ul>\n<li>Added automatic cache purging for supported cache plugins.<\/li>\n<li>Made the public path allowlist disabled by default.<\/li>\n<li>Improved cache integration settings and removed debug logging.<\/li>\n<\/ul>\n\n<h4>0.1.1<\/h4>\n\n<ul>\n<li>Added an optional W3 Total Cache Page Cache integration.<\/li>\n<li>Improved cache purge handling when maintenance mode changes.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>Stable and public version.<\/li>\n<\/ul>","raw_excerpt":"Lightweight maintenance mode with customizable content, configurable HTTP responses and administrator-only access.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/402463","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=402463"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/mywdotit"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=402463"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=402463"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=402463"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=402463"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=402463"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=402463"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}