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