当前位置: 首页 > news >正文

Typecho完美实现回复可见功能

之前转载过这么一篇文章《typecho非插件实现回复可见功能》,可以实现回复可见功能,但是有个问题,在文章列表页展示文章缩略内容时,如果回复可见内容刚好在缩略内容的位置上时,就会暴露出来,同时Feed里面也会暴露这个问题,那么如何解决呢,下面请看如何几近完美的实现回复可见功能:

步骤一就是《typecho非插件实现回复可见功能》里面的内容

post.php中的content(); ?>换成

select()->from('table.comments') ->where('cid = ?',$this->cid) ->where('mail = ?', $this->remember('mail',true)) ->where('status = ?', 'approved') //只有通过审核的评论才能看回复可见内容 ->limit(1); $result = $db->fetchAll($sql); if($this->user->hasLogin() || $result) { $content = preg_replace("/\[hide\](.*?)\[\/hide\]/sm",'$1',$this->content); } else{ $content = preg_replace("/\[hide\](.*?)\[\/hide\]/sm",'此处内容需要评论回复后方可阅读。',$this->content); } echo $content ?>

步骤二解决缩略内容和feed暴露问题。

functions.php中加入如下代码即可

Typecho_Plugin::factory('Widget_Abstract_Contents')->excerptEx = array('myyodux','one'); Typecho_Plugin::factory('Widget_Abstract_Contents')->contentEx = array('myyodux','one'); class myyodux { 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页面进行隐藏。

步骤三使用方法

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

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

css参考样式

.reply2view { background:#f8f8f8; padding:10px 10px 10px 40px; position:relative }

心里话在写yodu模板的时候,因为网友需要,我就找了教程把回复可见功能加上了,当时也是知道这个东西的bug,但是自己不会修,最近写了个typecho的搜索插件,看了一些typecho的插件接口和源码,发现用插件接口很好的就能解决了,于是乎水文一下,希望能帮助到一些人。

http://www.jsqmd.com/news/631564/

相关文章:

  • 轻量级IoT固件库:基于软串口的ESP8266单向上报方案
  • 记一次Webshell流量分析 | 添柴不加火控
  • 从零入门性能测试:理论+JMETER实操,看完就能上手鲁
  • 2025-2026年朝棠揽阅和中海九树满和谁好推荐:五大口碑产品评测对比顶尖 - 品牌推荐
  • 基于Python的科研管理系统毕业设计
  • 开源QMC解密工具深度解析:5分钟掌握音频格式转换核心技术
  • 【内部泄露】某千亿参数大模型压缩技术栈(含自研GEMM-aware剪枝+动态bit-width量化),仅限本文完整复现
  • 不满意Oh My Zsh启动卡顿,来试试Starship吧裙
  • ESP32嵌入式Ruby运行时:mruby/c轻量脚本引擎实战
  • 深夜告警炸裂?这份Linux故障排查“作战地图”请收好肆
  • Agent Harness 的标准化之路
  • 2026西南地区评价高的房屋鉴定机构TOP3客观名录:云南地基基础检测公司/云南房屋鉴定第三方机构/云南桥梁检测公司/选择指南 - 优质品牌商家
  • 让Typecho无限滚动加载的方法
  • AI学习成长专栏:从小白到年薪百万
  • 3步揪出Windows热键小偷:Hotkey Detective终极使用指南
  • 2025-2026年朝棠揽阅和中海九树满和谁好推荐:TOP5口碑产品评测对比领先 - 品牌推荐
  • 基于Python的美食网站毕设
  • Nginx 学习总结懦
  • bugku-web-备份是个好习惯
  • 【大模型工程化扩缩容黄金法则】:20年SRE专家亲授3大自动化策略,90%团队还在手动运维?
  • HDSP253X智能LED点阵显示器技术详解与嵌入式驱动实践
  • 别再一关了之!手把手教你用setenforce命令调试SELinux权限问题(附安卓init流程解析)
  • 2025-2026年朝棠揽阅和中海九树满和谁好推荐:TOP5口碑产品评测对比顶尖 - 品牌推荐
  • 告别复杂代码:用pytorch-grad-cam一站式实现神经网络可视化与可解释性分析
  • 我把Next AI Draw.io接入了我的Obsidian知识库:AI画图+笔记的梦幻联动实战
  • typecho修改后台地址
  • Vulkan进阶系列13 - VK_KHR_timeline_semaphore 介绍
  • HITICommSupport:Arduino跨平台通信库的宏时序解耦机制
  • STANet揭秘:基于时空注意力的遥感图像变化检测新范式与LEVIR-CD数据集实践
  • 万字拆解 LLM 运行机制:Token、上下文与采样参数嘎