我想知道是否有人知道在您的maintenance.php主题中使用WordPress文件的方法,而不是wp内容文件夹中的方法。
我主要是为functions.php文件寻找一些代码,它将调用主题文件夹中的maintenance.php文件。
我们希望在维护页面中添加一些品牌,因此最好能够在主题文件夹中使用它。我知道这里有一些特殊的插件。但我们不想给我们的网站太多的开销,因为插件只用于这样的小细节,所以如果有办法通过主题文件夹实现这一点,那就太好了!
发布于 2017-08-02 06:52:30
当WordPress进入维护模式时,它会在执行维护时将名为.maintenance的文件添加到根目录,然后将其删除。您可以在主题的functions.php中编写函数,检查该文件并从主题加载自定义维护页面。
if ( ! function_exists( 'wpse84987_maintenance_mode' ) ) {
function wpse84987_maintenance_mode() {
if ( file_exists( ABSPATH . '.maintenance' ) ) {
include_once get_stylesheet_directory() . '/maintenance.php';
die();
}
}
add_action( 'wp', 'wpse84987_maintenance_mode' );
}将您的维护内容放在主题文件夹中的maintenance.php页面中,您可以随意设置它的样式。
如果您使用wp_die函数,您将得到灰色背景下的标准白框。通过这种方式,您可以像任何其他主题页面一样对维护页面进行样式设置。
您还可以将maintenance.php添加到wp-content目录(或设置WP_CONTENT_DIR指向的任何位置)作为插入插件,从而在主题之外执行此操作。当WP从wp_maintenance()内部检查维护模式时,它会查找该文件并加载它(如果存在),或者加载它自己的文件(如果没有)。如果站点没有处于维护模式,或者在其中超过10分钟,“maintenance.php”将不会加载,即使该站点在技术上仍然处于维护模式。WordPress 4.6引入了'enable_maintenance_mode'过滤器,像wp-cli这样的工具可以使用(Ab)强制检查插入,并允许您从维护文件中运行'enable_maintenance_mode'命令。
https://stackoverflow.com/questions/45453367
复制相似问题