{"id":37782,"date":"2015-07-24T08:15:20","date_gmt":"2015-07-24T08:15:20","guid":{"rendered":"https:\/\/wordpress.org\/plugins-wp\/maintenance-switch\/"},"modified":"2025-12-18T17:35:54","modified_gmt":"2025-12-18T17:35:54","slug":"maintenance-switch","status":"publish","type":"plugin","link":"https:\/\/tah.wordpress.org\/plugins\/maintenance-switch\/","author":13214947,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.7.1","stable_tag":"1.7.1","tested":"6.9.4","requires":"3.5","requires_php":"8.3","requires_plugins":null,"header_name":"Maintenance Switch","header_author":"Fugu","header_description":"","assets_banners_color":"2d2d2d","last_updated":"2025-12-18 17:35:54","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/www.paypal.com\/cgi-bin\/webscr?cmd=_s-xclick&hosted_button_id=JYBDJCKL3FCE8","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/maintenance-switch","header_author_uri":"http:\/\/www.fugu.fr","rating":4.7,"author_block_rating":0,"active_installs":600,"downloads":40791,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.2":{"tag":"1.0.2","author":"fugudesign","date":"2015-09-02 09:53:26"},"1.0.3":{"tag":"1.0.3","author":"fugudesign","date":"2015-09-02 09:53:26"},"1.0.4":{"tag":"1.0.4","author":"fugudesign","date":"2015-10-15 19:02:07"},"1.0.5":{"tag":"1.0.5","author":"fugudesign","date":"2015-10-15 20:20:39"},"1.0.6":{"tag":"1.0.6","author":"fugudesign","date":"2015-12-14 16:19:10"},"1.0.7":{"tag":"1.0.7","author":"fugudesign","date":"2015-11-03 13:26:18"},"1.1.3":{"tag":"1.1.3","author":"fugudesign","date":"2016-02-18 00:56:54"},"1.1.4":{"tag":"1.1.4","author":"fugudesign","date":"2016-02-18 10:23:15"},"1.1.6":{"tag":"1.1.6","author":"fugudesign","date":"2016-03-03 01:40:01"},"1.1.7":{"tag":"1.1.7","author":"fugudesign","date":"2016-03-03 01:51:18"},"1.1.8":{"tag":"1.1.8","author":"fugudesign","date":"2016-04-14 13:20:57"},"1.2.0":{"tag":"1.2.0","author":"fugudesign","date":"2016-04-15 09:15:25"},"1.2.1":{"tag":"1.2.1","author":"fugudesign","date":"2016-04-15 13:23:03"},"1.2.2":{"tag":"1.2.2","author":"fugudesign","date":"2016-04-26 11:00:00"},"1.3.0":{"tag":"1.3.0","author":"fugudesign","date":"2016-04-26 14:26:00"},"1.3.1":{"tag":"1.3.1","author":"fugudesign","date":"2016-04-26 16:15:08"},"1.3.2":{"tag":"1.3.2","author":"fugudesign","date":"2016-05-03 12:56:01"},"1.3.3":{"tag":"1.3.3","author":"fugudesign","date":"2016-05-03 15:23:30"},"1.3.4":{"tag":"1.3.4","author":"fugudesign","date":"2016-05-15 21:36:40"},"1.3.5":{"tag":"1.3.5","author":"fugudesign","date":"2016-08-16 21:58:47"},"1.3.6":{"tag":"1.3.6","author":"fugudesign","date":"2016-08-16 22:29:03"},"1.3.7":{"tag":"1.3.7","author":"fugudesign","date":"2016-09-26 10:42:41"},"1.3.8":{"tag":"1.3.8","author":"fugudesign","date":"2016-12-12 00:46:10"},"1.4.0":{"tag":"1.4.0","author":"fugudesign","date":"2018-01-19 16:51:33"},"1.5.0":{"tag":"1.5.0","author":"fugudesign","date":"2018-01-19 17:10:23"},"1.5.1":{"tag":"1.5.1","author":"fugudesign","date":"2018-01-20 13:44:09"},"1.5.2":{"tag":"1.5.2","author":"fugudesign","date":"2018-01-20 22:22:40"},"1.6.0":{"tag":"1.6.0","author":"fugudesign","date":"2025-09-28 08:23:13"},"1.6.1":{"tag":"1.6.1","author":"fugudesign","date":"2025-09-28 10:23:17"},"1.6.2":{"tag":"1.6.2","author":"fugudesign","date":"2025-09-28 12:04:16"},"1.6.3":{"tag":"1.6.3","author":"fugudesign","date":"2025-09-28 12:32:05"},"1.6.4":{"tag":"1.6.4","author":"fugudesign","date":"2025-09-28 14:03:22"},"1.7.0":{"tag":"1.7.0","author":"fugudesign","date":"2025-09-29 23:46:58"},"1.7.1":{"tag":"1.7.1","author":"fugudesign","date":"2025-12-18 17:35:54"}},"upgrade_notice":{"1.0.1":"<p>This version is fully rewritten for best OOP implementation<\/p>","1.0.0":"<p>This version is fully rewritten (OOP)<\/p>"},"ratings":{"1":"1","2":0,"3":0,"4":0,"5":"12"},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":1205972,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":1205972,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":1205966,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":1205966,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.2","1.0.3","1.0.4","1.0.5","1.0.6","1.0.7","1.1.3","1.1.4","1.1.6","1.1.7","1.1.8","1.2.0","1.2.1","1.2.2","1.3.0","1.3.1","1.3.2","1.3.3","1.3.4","1.3.5","1.3.6","1.3.7","1.3.8","1.4.0","1.5.0","1.5.1","1.5.2","1.6.0","1.6.1","1.6.2","1.6.3","1.6.4","1.7.0","1.7.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":1404482,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":1805892,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":1552174,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":1552174,"resolution":"4","location":"assets","locale":""}},"screenshots":{"1":"A button is added to the admin bar for simple toggling in maintenance mode.","2":"The \"Display\" tab of the settings page allow you to define the entire HTML code of your maintenance page, or use a custom file in your theme.","3":"The \"Permissions\" tab of the settings page allow you to define which user roles can bypass the maintenance mode (to visit the website when maintenance mode is on).","4":"The \"Behavior\" tab of the settings page allow you to change the http error code returned by the maintenance page."},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[802,806,732,2323,2414],"plugin_category":[52,59],"plugin_contributors":[82193],"plugin_business_model":[],"class_list":["post-37782","plugin","type-plugin","status-publish","hentry","plugin_tags-coming-soon","plugin_tags-construction","plugin_tags-maintenance","plugin_tags-offline","plugin_tags-switch","plugin_category-performance","plugin_category-utilities-and-tools","plugin_contributors-fugudesign","plugin_committers-fugudesign"],"banners":{"banner":"https:\/\/ps.w.org\/maintenance-switch\/assets\/banner-772x250.png?rev=1205966","banner_2x":"https:\/\/ps.w.org\/maintenance-switch\/assets\/banner-1544x500.png?rev=1205966","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/maintenance-switch\/assets\/icon-128x128.png?rev=1205972","icon_2x":"https:\/\/ps.w.org\/maintenance-switch\/assets\/icon-256x256.png?rev=1205972","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/maintenance-switch\/assets\/screenshot-1.png?rev=1404482","caption":"A button is added to the admin bar for simple toggling in maintenance mode."},{"src":"https:\/\/ps.w.org\/maintenance-switch\/assets\/screenshot-2.png?rev=1805892","caption":"The \"Display\" tab of the settings page allow you to define the entire HTML code of your maintenance page, or use a custom file in your theme."},{"src":"https:\/\/ps.w.org\/maintenance-switch\/assets\/screenshot-3.png?rev=1552174","caption":"The \"Permissions\" tab of the settings page allow you to define which user roles can bypass the maintenance mode (to visit the website when maintenance mode is on)."},{"src":"https:\/\/ps.w.org\/maintenance-switch\/assets\/screenshot-4.png?rev=1552174","caption":"The \"Behavior\" tab of the settings page allow you to change the http error code returned by the maintenance page."}],"raw_content":"<!--section=description-->\n<p><strong>One-click maintenance mode<\/strong><\/p>\n\n<p>This plugin adds a button to the admin bar for toggling the builtin maintenance mode.<\/p>\n\n<p><strong>Core maintenance mode<\/strong><\/p>\n\n<p>A .maintenance file is generated and copied to the Wordpress installation folder when turning on the maintenance mode.\nA maintenance.php file is generated and added to the wp-content folder for custom HTML code.<\/p>\n\n<p><strong>Your custom maintenance page will also be active during the core, plugins and themes updates.<\/strong><\/p>\n\n<h4>Special Features<\/h4>\n\n<ul>\n<li><p>set which roles can switch the maintenance mode<\/p><\/li>\n<li><p>set which roles can bypass the maintenance mode on the frontend<\/p><\/li>\n<li><p>set the entire HTML code used for the maintenance page<\/p><\/li>\n<li><p>preview the maintenance page before saving<\/p><\/li>\n<li><p>enable the theme file support, so you can create in each your themes a maintenance.php file to customize the maintenance page<\/p><\/li>\n<li><p>restore all default settings<\/p><\/li>\n<li><p>restore default HTML code<\/p><\/li>\n<li><p>create\/delete the maintenance file in the active WP theme<\/p><\/li>\n<\/ul>\n\n<h3>Translations<\/h3>\n\n<ul>\n<li>English - default, always included<\/li>\n<li>French<\/li>\n<\/ul>\n\n<!--section=installation-->\n<p>This section describes how to install the plugin and get it working.<\/p>\n\n<h4>Using The WordPress Dashboard<\/h4>\n\n<ol>\n<li>Navigate to the 'Add New' in the plugins dashboard<\/li>\n<li>Search for 'maintenance-switch'<\/li>\n<li>Click 'Install Now'<\/li>\n<li>Activate the plugin on the Plugin dashboard<\/li>\n<\/ol>\n\n<h4>Uploading in WordPress Dashboard<\/h4>\n\n<ol>\n<li>Navigate to the 'Add New' in the plugins dashboard<\/li>\n<li>Navigate to the 'Upload' area<\/li>\n<li>Select <code>maintenance-switch.zip<\/code> from your computer<\/li>\n<li>Click 'Install Now'<\/li>\n<li>Activate the plugin in the Plugin dashboard<\/li>\n<li>Navigate to 'Settings' &gt; 'Maintenance Switch'<\/li>\n<li>Adjust and save your settings<\/li>\n<\/ol>\n\n<h4>Using FTP<\/h4>\n\n<ol>\n<li>Download <code>maintenance-switch.zip<\/code><\/li>\n<li>Extract the <code>maintenance-switch<\/code> directory to your computer<\/li>\n<li>Upload the <code>maintenance-switch<\/code> directory to the <code>\/wp-content\/plugins\/<\/code> directory<\/li>\n<li>Activate the plugin in the Plugin dashboard<\/li>\n<li>Navigate to 'Settings' &gt; 'Maintenance Switch'<\/li>\n<li>Adjust and save your settings<\/li>\n<\/ol>\n\n<p>Follow this plugin on <a href=\"https:\/\/github.com\/fugudesign\/maintenance-switch\">GitHub<\/a><\/p>\n\n<!--section=faq-->\n<dl>\n<dt id='can%20i%20set%20a%20counter%20for%20coming%20soon%20page%3F'><h3>Can I set a counter for coming soon page?<\/h3><\/dt>\n<dd><p>The plugin allows you to set the entire HTML code of the maintenance page, you can implement a counter with css and js code.<\/p><\/dd>\n<dt id='is%20my%20maintenance%20page%20html%20used%20during%20the%20core%20maintenance%3F'><h3>Is my maintenance page HTML used during the core maintenance?<\/h3><\/dt>\n<dd><p>Yes, the maintenance.php file is used.<\/p><\/dd>\n<dt id='does%20the%20plugin%20automatically%20detects%20the%20url%20login%3F'><h3>Does the plugin automatically detects the url login?<\/h3><\/dt>\n<dd><p>Yes.<\/p><\/dd>\n<dt id='is%20it%20possible%20to%20customize%20page%20from%20my%20theme%3F'><h3>Is it possible to customize page from my theme?<\/h3><\/dt>\n<dd><p>Yes, use the settings page to enable the theme file support.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.7.1<\/h4>\n\n<ul>\n<li>WordPress 6.9 compatibility confirmed<\/li>\n<li>Improved WordPress Coding Standards compliance<\/li>\n<li>Global variables now properly prefixed with maintenance_switch_<\/li>\n<li>Functions renamed with correct prefix for better naming conventions<\/li>\n<li>Added backward compatibility wrappers for smooth updates<\/li>\n<li>Code quality improvements and optimizations<\/li>\n<\/ul>\n\n<h4>1.7.0<\/h4>\n\n<ul>\n<li>WordPress 6.8 compatibility tested<\/li>\n<li>Enhanced security improvements<\/li>\n<li>Code modernization<\/li>\n<\/ul>\n\n<h4>1.6.0<\/h4>\n\n<ul>\n<li>WordPress 6.3 compatibility tested<\/li>\n<li>PHP 8.1 compatibility improvements<\/li>\n<li>Replace deprecated wp_specialchars_decode() with htmlspecialchars_decode()<\/li>\n<li>Fix fatal error with function redeclaration in .maintenance template<\/li>\n<li>Modernize plugin for current WordPress standards<\/li>\n<\/ul>\n\n<h4>1.5.2<\/h4>\n\n<ul>\n<li>Fix the preview page bug with code editor<\/li>\n<\/ul>\n\n<h4>1.5.1<\/h4>\n\n<ul>\n<li>Fix the disabled code field bug<\/li>\n<li>Enqueue admin assets only on settings page<\/li>\n<\/ul>\n\n<h4>1.5.0<\/h4>\n\n<ul>\n<li>Add a gitignore and gulp files<\/li>\n<li>Add the wp code editor to the page HTML setting<\/li>\n<li>Test for compatibility with Wordpress 4.9<\/li>\n<\/ul>\n\n<h4>1.4.0<\/h4>\n\n<ul>\n<li>Add a info link about moving to GitHub<\/li>\n<li>Test for compatibility with Wordpress 4.7<\/li>\n<\/ul>\n\n<h4>1.3.8<\/h4>\n\n<ul>\n<li>Adding an option for stoping to return 503 error code<\/li>\n<\/ul>\n\n<h4>1.3.7<\/h4>\n\n<ul>\n<li>Fix a bug of settings initialization<\/li>\n<\/ul>\n\n<h4>1.3.6<\/h4>\n\n<ul>\n<li>Fix a php in_array warning in admin display<\/li>\n<\/ul>\n\n<h4>1.3.5<\/h4>\n\n<ul>\n<li>Fix a php error in the admin<\/li>\n<\/ul>\n\n<h4>1.3.4<\/h4>\n\n<ul>\n<li>Fix a bug with migration of settings<\/li>\n<\/ul>\n\n<h4>1.3.3<\/h4>\n\n<ul>\n<li>Fix bug with data saving<\/li>\n<li>Fix bug with HTML encoding<\/li>\n<li>Fix bug with files generation<\/li>\n<li>Fix a very persistent bug with settings migration<\/li>\n<\/ul>\n\n<h4>1.3.2<\/h4>\n\n<ul>\n<li>Fix a persistent bug with settings migration<\/li>\n<\/ul>\n\n<h4>1.3.1<\/h4>\n\n<ul>\n<li>Fix a PHP4 compatibility issue<\/li>\n<li>Fix a bug with settings migration<\/li>\n<li>Improve some styles<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>Improve performances<\/li>\n<li>Implement WP Settings API<\/li>\n<li>Adding reset features<\/li>\n<\/ul>\n\n<h4>1.2.2<\/h4>\n\n<ul>\n<li>Adding POT language file<\/li>\n<li>Updating language files<\/li>\n<\/ul>\n\n<h4>1.2.1<\/h4>\n\n<ul>\n<li>Fix a bug with html code in preview page<\/li>\n<li>Fix a bug when delete theme file after activating it<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Improve the switch button appearance<\/li>\n<li>Adding Maintenance page preview<\/li>\n<\/ul>\n\n<h4>1.1.8<\/h4>\n\n<ul>\n<li>Change the plugin description in admin area<\/li>\n<\/ul>\n\n<h4>1.1.7<\/h4>\n\n<ul>\n<li>Adding roles management for maintenance control<\/li>\n<li>Fix a icon bug on the switch button<\/li>\n<\/ul>\n\n<h4>1.1.6<\/h4>\n\n<ul>\n<li>Adding omitted translations<\/li>\n<li>Fix a bug about the HTML text config<\/li>\n<\/ul>\n\n<h4>1.1.5<\/h4>\n\n<ul>\n<li>Adding French translations<\/li>\n<li>Improve the default HTML texts<\/li>\n<\/ul>\n\n<h4>1.1.4<\/h4>\n\n<ul>\n<li>Fix the bug to get IP through a proxy<\/li>\n<\/ul>\n\n<h4>1.1.3<\/h4>\n\n<ul>\n<li>Fix a ajax button bug<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Fix a deactivation bug after updates<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Fix a deactivation bug after updates<\/li>\n<li>Adding the status management in database<\/li>\n<li>Adding the ability to use a maintenance.php file in the theme<\/li>\n<\/ul>\n\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>Fix a saving bug in the settings page<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Fix a js bug with the \"add my ip\" button<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Fix a php syntax error in config.php<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Adding exceptions for IP addresses<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Adding automatic detection of the login url<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Ajusting the readme file<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fully rewritten with http:\/\/wppb.me\/ boilerplate.<\/li>\n<li>Adding activate and deactivate functionalities.<\/li>\n<li>Fix switch button styles and actions from frontend.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>A change since the previous version.<\/li>\n<li>Another change.<\/li>\n<\/ul>\n\n<h4>1.0-alpha<\/h4>\n\n<ul>\n<li>First simple implementation of the main functionality<\/li>\n<\/ul>","raw_excerpt":"Customize easily and switch in one-click to (native) maintenance mode from your backend or frontend.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/37782","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=37782"}],"author":[{"embeddable":true,"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/fugudesign"}],"wp:attachment":[{"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=37782"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=37782"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=37782"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=37782"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=37782"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/tah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=37782"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}