自定义Typecho加密文章的Html结构
导读:自定义Typecho加密文章的Html结构.jpg 为什么要自定义?我们先看下正常的typecho加密文章的html代码结构<form class="protected" action="一个链接地址" method="post"&g...
自定义Typecho加密文章的Html结构.jpg 为什么要自定义?
我们先看下正常的typecho加密文章的html
代码结构
form class="protected" action="一个链接地址" method="post">
p class="word">
请输入密码访问/p>
p>
input type="password" class="text" name="protectPassword">
input type="hidden" name="protectCID" value="文章id">
input type="submit" class="submit" value="提交">
/p>
/form>
那么我们作为模板的作者,如果要写这部分的样式,就必须根据他的class
来写样式;
但是如果我用的是前端框架,框架已经内置好了一些表单样式,我们为什么不用呢?
因为typecho默认的结构,无法套用,所以就有了这篇文章。
自定义加密文章的Html
将模板post.php
中的content();
?>
换为以下代码即可,其中html结构可根据自己模板架构自行调整。
!--判断文章是否加密-->
?php if($this->
hidden||$this->
titleshow): ?>
!--如果加密,输出自定义的表单格式-->
form action="?php echo Typecho_Widget::widget('Widget_Security')->
getTokenUrl($this->
permalink);
?>
" method="post">
div class="form-group mb-3">
label>
请输入密码访问/label>
div class="input-group">
input type="password" class="text" name="protectPassword" class="form-control" placeholder="请输入密码" aria-label="请输入密码">
input type="hidden" name="protectCID" value="?php $this->
cid();
?>
" />
div class="input-group-append">
button class="btn btn-primary" type="submit">
提交/button>
/div>
/div>
/div>
/form>
?php else: ?>
!--如果未加密,输出文章内容-->
?php $this->
content();
?>
?php endif;
?>
其中$this->
titleshow
是用来兼容titleshow插件的。
关于Titleshow插件
Typecho文章密码保护功能,默认会强制标题为”此内容被密码保护“,隐藏文章标签,强制文章评论数为0,隐藏文章内容,并且不允许文章进行评论,还会返回403
。
Titleshow插件,完美的解决了这些问题,加密文章可以显示标题,允许评论,不返回403
状态等等,让文章加密功能只加密文章内容不影响其他。
那么,这么好的插件去哪里下载呢?
这里:https://github.com/jrotty/Titleshow
题外话
只是因为想偷懒不想写css
,才有了本文,本身没啥技术含量,只是最开始不兼容Titleshow插件,所以就没有发文章出来,毕竟自己写的教程不兼容自己写的插件,岂不是很难堪233。所以今天给Titleshow插件升级了下,可以完美兼容了,嘿嘿嘿!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 自定义Typecho加密文章的Html结构
本文地址: https://pptw.com/jishu/7878.html