前言
因为经常捣鼓网站,有时候会直接在服务器上热更新,这样会导致用户体验很不好
所以就想到了设置一个维护通知页面,告知访问的用户正在维护,防止用户因无法访问放弃访问本站。
效果展示
操作步骤
本教程基于Joe主题,当然其他Typecho主题也可以使用,代码是固定的,但是方法是灵活的,期待您的灵感大爆发!
增加开关
在主题目录下的 functions.php 里添加以下代码(因为我引入了自定义配置文件,所以我是放在 public/custom.php 文件里的)
添加代码
$Maintain = new Typecho_Widget_Helper_Form_Element_Select(
'Maintain',
array(
'off' => '关闭(默认)',
'on' => '开启',
),
'off',
'是否开启全站维护功能',
'介绍:开启后,全站进入维护状态'
);
$Maintain->setAttribute('class', 'joe_content joe_global');
$form->addInput($Maintain->multiMode());
添加全局跳转
因为我一般更新都是整站屏蔽的,所以我这里是添加的全局跳转,直接在public/header.php顶部添加以下代码
如果你只想某些页面跳转,比如只想跳转首页,你可以在index.php添加下面的代码
<!-- 维护跳转 -->
<?php
if(Helper::options()->Maintain === 'on') {
header("Location: Maintain.html");
exit;
}
?>
上传维护页面
将404/维护单页上传到Typecho主程序的根目录
,记得把文件名改为Maintain.html
(区分大小写)。
评论