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

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

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

进入   网站目录 /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://16dajie.com/shibei/77.html

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

Mywing.exe阻止win7,win10关机的解决办法

Mywing.exe阻止win7,win10关机的解决办法

解决方法方法主要参考的网址:win10系统提示某应用程序阻止关机怎么办和Mywing阻止win7关机的解决办法1. 打开注册表2.找到HKEY_USERS或HKEY_CURRENT_USER → .DEFAULT → Control Panel → Desktop3.AutoEndTasks变量添加...

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

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

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

js制作网页动态背景

js制作网页动态背景

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

快速设计高逼格的LOGO

快速设计高逼格的LOGO

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

像素图标设计需要注意的问题

像素图标设计需要注意的问题

像素图标设计需要注意的问题有很多,下面我们先来设计一个像素图标。    首先我们用Photoshop新建一个14x14像素大小的透明文件。下面我们来画图标的轮廓,笔刷选择1px的铅笔,使用暗灰色调。注意:1.绘制直线可以在起始点点击一下,再按住Shift点击直线的终点即可。&nb...

发表评论

访客

看不清,换一张

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