WordPress维护模式(手动实现与插件方案)
作者:Christos Pontikis
发布日期:2025年5月25日
分类:WordPress
标签:hm, how-to, maintenanace mode, php, t_eg, wordpress, wordpress development, wp_dev
当我们需要对WordPress网站进行重大更改(自定义代码和/或数据库更改)时,就需要启用WordPress维护模式,这样网站的前端将对访问者不可用。
手动实现WordPress维护模式(无需插件)
将以下代码添加到子主题的functions.php文件中。
如果您没有子主题,可以轻松创建一个。请参阅相关文章。
使用此代码,网站(包括管理面板和前端)仅对管理员可用。其他任何用户都将看到维护模式消息。
启用WordPress维护模式
/*** 维护模式*/
function wp_maintenance_mode() {if ( ! current_user_can( 'administrator' ) ) {wp_logout();}wp_die( '<h1>网站正在进行计划维护</h1><br />请稍后再来查看。' );
}/*** 检查当前页面是否为登录页面** @return bool*/
function is_wp_login() {if ( isset( $GLOBALS['pagenow'] ) && 'wp-login.php' === $GLOBALS['pagenow'] ) {return true;}return false;
}if ( false === is_user_logged_in() && false === is_wp_login() ) {add_action( 'get_header', 'wp_maintenance_mode' );
} else {if ( ! current_user_can( 'administrator' ) ) {add_action( 'admin_init', 'wp_maintenance_mode' );}
}
禁用WordPress维护模式
只需注释掉add_action行(或删除整个if块):
if ( false === is_user_logged_in() && false === is_wp_login() ) {//add_action( 'get_header', 'wp_maintenance_mode' );
} else {if ( ! current_user_can( 'administrator' ) ) {//add_action( 'admin_init', 'wp_maintenance_mode' );}
}
使用插件实现WordPress维护模式
您可以使用许多插件。
在本教程中,我们使用LightStart - Maintenance Mode, Coming Soon and Landing Page Builder。
安装并激活插件。
您可能希望使用许多可用选项:
菜单 ⟶ 设置 ⟶ LightStart
但基本设置是:
LightStart
结果是:
LightStart - 维护模式
记得清除缓存(如果有),否则插件可能无法正常工作。
Christos Pontikis
企业家 | 全栈开发人员 | MediSign Ltd创始人。拥有超过15年设计和开发Web应用程序的专业经验。在管理(Web)项目方面也非常有经验。
www.pontikis.gr/en
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)
公众号二维码
公众号二维码