!
也想出现在这里? 联系我们
广告位
当前位置:首页>技术分享>网站运维>【WP函数】wp_maintenance()

【WP函数】wp_maintenance()

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/

给TA打赏
共{{data.count}}人
人已打赏
网站运维

图解WordPress程序文件加载顺序

2022-5-26 9:39:53

网站运维

WordPress学习—get_avatar()详解

2022-5-26 20:17:46

声明 本站上的部份代码及教程来源于互联网,仅供网友学习交流,若您喜欢本文可附上原文链接随意转载。无意侵害您的权益,请发送邮件至 2651636361@qq.com 或点击右侧 私信:少羽 反馈,我们将尽快处理。
0 条回复A文章作者M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索