WordPress 在更新程序、主题、插件的时候会进入维护模式并提示“正在执行例行维护,请一分钟后回来。”,英文为“Briefly unavailable for scheduled maintenance. Check back in a minute.”。关于该函数的定义位于wp-includes 文件夹下的 load.php 文件中,具体代码如下:
/** * Die with a maintenance message when conditions are met. * * Checks for a file in the WordPress root directory named ".maintenance". * This file will contain the variable $upgrading, set to the time the file * was created. If the file was created less than 10 minutes ago, WordPress * enters maintenance mode and displays a message. * * The default message can be replaced by using a drop-in (maintenance.php in * the wp-content directory). * * @since 3.0.0 * @access private * * @global int $upgrading the unix timestamp marking when upgrading WordPress began. */ function wp_maintenance() { if ( ! file_exists( ABSPATH . '.maintenance' ) || wp_installing() ) return; global $upgrading; include( ABSPATH . '.maintenance' ); // If the $upgrading timestamp is older than 10 minutes, don't die. if ( ( time() - $upgrading ) >= 600 ) return; /** * Filters whether to enable maintenance mode. * * This filter runs before it can be used by plugins. It is designed for * non-web runtimes. If this filter returns true, maintenance mode will be * active and the request will end. If false, the request will be allowed to * continue processing even if maintenance mode should be active. * * @since 4.6.0 * * @param bool $enable_checks Whether to enable maintenance mode. Default true. * @param int $upgrading The timestamp set in the .maintenance file. */ if ( ! apply_filters( 'enable_maintenance_mode', true, $upgrading ) ) { return; } if ( file_exists( WP_CONTENT_DIR . '/maintenance.php' ) ) { require_once( WP_CONTENT_DIR . '/maintenance.php' ); die(); } wp_load_translations_early(); $protocol = wp_get_server_protocol(); header( "$protocol 503 Service Unavailable", true, 503 ); header( 'Content-Type: text/html; charset=utf-8' ); header( 'Retry-After: 600' ); ?> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"<?php if ( is_rtl() ) echo ' dir="rtl"'; ?>> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title><?php _e( 'Maintenance' ); ?></title> </head> <body> <h1><?php _e( 'Briefly unavailable for scheduled maintenance. Check back in a minute.' ); ?></h1> </body> </html> <?php die(); }
如果你不喜欢默认的提示文字,可以在这里将默认的“Briefly unavailable for scheduled maintenance. Check back in a minute.”替换为你想要的任意文字或代码。
参考文档:https://developer.wordpress.org/reference/functions/wp_maintenance/
评论 抢沙发