当前位置:首页 > 大街拾贝 > 正文内容

Typecho 不使用插件实现回复可见

liuxy2年前 (2024-02-24)大街拾贝1420

进入   网站目录 /usr/themes/ 主题   找到  post.php  打开

步骤一

在  post.php  找到  <?php $this->content(); ?>  替换成

php 代码:

<?php$db = Typecho_Db::get();$sql = $db->select()->from('table.comments')
    ->where('cid = ?',$this->cid)
    ->where('mail = ?', $this->remember('mail',true))
    ->limit(1);$result = $db->fetchAll($sql);if($this->user->hasLogin()  $result) {    $content = preg_replace("/\[hide\](.*?)\[\/hide\]/sm",'<div class="reply2view">$1</div>',$this->content);}else{    $content = preg_replace("/\[hide\](.*?)\[\/hide\]/sm",'<div class="reply2view"> 此处内容需要评论回复后方可阅读。</div>',$this->content);}echo $content ?>

解决 feed 内容和缩略内容暴露

在  functions.php  中加入如下代码

html 代码:

Typecho_Plugin::factory('Widget_Abstract_Contents')->excerptEx = array('moleft','one');
Typecho_Plugin::factory('Widget_Abstract_Contents')->contentEx = array('moleft','one');
class moleft {    public static function one($con,$obj,$text)
    {      $text = empty($text)?$con:$text;
      if(!$obj->is('single')){      $text = preg_replace("/\[hide\](.*?)\[\/hide\]/sm",' 此处内容已隐藏 ',$text);
      }
      return $text;
    }
}

就是用 插件 接口,在缩略内容输出之前,隐藏掉或者替换掉回复可见内容,同时使用 if 判断,来针对非 single 页面进行隐藏。

步骤三

在写文章需要隐藏部分内容时用以下写法 (去掉 @)

html 代码:

[@hide] 要隐藏的内容 [/hide]

css 代码参考,我在使用的

css 代码:

.reply2view {    background-color: rgba(0,0,0,.075);
    border-radius: 5px;
    border: 1px dashed #888888;
    position: relative;
    text-align: center;
    padding: 10px 20px;}
打赏 支付宝打赏 微信打赏

扫描二维码推送至手机访问。

版权声明:本文由十六大街发布,如需转载请注明出处。

本文链接:http://www.16dajie.com/shibei/77.html

“Typecho 不使用插件实现回复可见” 的相关文章

多个WPS帐号怎么合并成一个?合并帐号功能了解下

多个WPS帐号怎么合并成一个?合并帐号功能了解下

 我们在用WPS的时候,往往会登录账号,这样可以把文档数据上传到云文档,以便大家可以随时随地查阅和编辑更新。如果没有登录账号的话,只能是单个的保存文件,并且存储位置也是一定的,只能在保存文件的这台电脑上查阅和编辑,所以登录WPS账号之后再进行各种编辑就方便多了,不管在哪用的那个设备只要账号一样,里面...

解决win10电脑无法访问局域网内其他共享电脑文件的问题

解决win10电脑无法访问局域网内其他共享电脑文件的问题

今天使用自己的电脑办公,突然发现无法范围内局域网内的共享文件夹。本来以为是共享文件夹权限设置有问题,设置了好久,后面在其他机器上测试,完全可以访问共享文件夹,看来,是本地的机器权限环境配置有问题咯。一番折腾后,完美解决了问题。问题复现:本地计算机win10系统,无法访问局域网内的共享服务器、共享文件...

电信/移动/联通/广电机顶盒开启ADB方法汇总

电信/移动/联通/广电机顶盒开启ADB方法汇总

有很多人家里都有机顶盒,过期了不想再续费就闲置下来一个电视机顶盒,还想继续看电视怎么办?那就刷机破解,之后即可和网络电视盒子一样安装第三方软件,刷机必备的一定是开启ADB调试的方法,今天就来跟大家分享一下电信/移动/联通/广电机顶盒开启ADB方法汇总。电信机顶盒开启ADB方法汇总广东电信华为Q21使...

js制作网页动态背景

js制作网页动态背景

装逼必备canvascanvas简单来说就是一块画布,通过JavaScript来进行绘制,可以用来制作各种特效那么如何利用canvas来制作一个动态的网页背景呢,就像这样子:首先,我们就需要在我们的html页面中创建一个canvas<div id="background&q...

超酷的 HTML5+CSS3 loading 效果

超酷的 HTML5+CSS3 loading 效果

用 gif 图片来做 loading 的时代已经过去了,它显得太 low 了,而用 HTML5/CSS3 以及 SVG 和 canvas 来做加载动画显得既炫酷又逼格十足。这已经成为一种趋势。这里收集了几十个用 html5 和 css3 实现的 loading 效果,以供学习参考。01. CSS R...

快速设计高逼格的LOGO

快速设计高逼格的LOGO

在我们制作LOGO的时候,经常会看到很多大神的设计稿有很多高精度的辅助线,让整个LOGO显得非常精细(如下图中的LOGO)。而且很多同学在制作LOGO形状的时候经常因为路径线条的画的不流畅,而显得LOGO粗糙廉价。那么今天MICU教大家如何快速绘制高品质的LOGO,利用5分钟高效完成设计稿。新建导入...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。