Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Typecho完美实现回复可见功能

Typecho完美实现回复可见功能

作者头像
泽泽社长
发布于 2023-04-17 11:16:45
发布于 2023-04-17 11:16:45
81300
代码可运行
举报
文章被收录于专栏:泽泽社泽泽社
运行总次数:0
代码可运行

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

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

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
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中加入如下代码即可

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
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页面进行隐藏。

步骤三 使用方法

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[@hide]要隐藏的内容[/hide]

css参考样式

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
.reply2view {
    background:#f8f8f8;
    padding:10px 10px 10px 40px;
    position:relative
}

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Typecho回复可见功能
最近逛博客,发现大家的博客都有回复可见的功能 回到我的博客一看发现没有,这可不得行 于是我也整了一个233,顺便分享给大家
HCG_Sky
2020/07/24
2.4K2
Typecho完美实现回复可见功能
} 就是用插件接口,在缩略内容输出之前,隐藏掉或者替换掉回复可见内容,同时使用if判断,来针对非single页面进行隐藏。
似水的流年
2019/12/05
1K0
Typecho教程 - 非插件实现回复可见
这个教程网上很多的,包括我也是从网上搬来的,但是网上的涉及文件太多,这里给大家推荐我修改的方法,希望能帮助到大家。 首先我们进入 /网站根目录/usr/themes/{主题名} ,然后按照下面的文件来修改。
用砖头敲代码
2022/08/30
5950
Typecho无插件实现回复可见效果代码记录
我们经常遇到一些个人网站提供的重要的文件下载、主题下载等文件需要用户回复可见。这些功能到底是如何实现的呢?在之前WordPress相关的功能上有过介绍(WordPress利用easy2hide插件实现评论内容可见模式),今天老蒋需要分享的是在Typecho程序中如何实现回复才可见的效果?
老蒋
2021/12/24
4870
Typecho通用评论组件包含Css样式
一直以来我都不太喜欢写Typecho评论列表样式,那时候多说还没有死,就想着有没有大佬直接写好一套Typecho评论列表简单样式,然后别人就可以改改css和html结构就能diy自己的样式,不用考虑php啥的,于是乎昨天简单弄了下。
泽泽社长
2023/10/01
4730
Typecho主题开发/二次开发常用代码功能整理备用
目前我们在使用的博客CMS程序中,可能较多的网友会使用WordPress,毕竟提供的免费主题、插件以及文档是比较多的,主要是用户量确实比较多。其次国内的免费博客CMS中,ZBLOG和Typecho是小众用户群,不能说不行,只能说用户量相对比较小。但是老蒋个人认为有用作个人博客日志的还是可以用的。
老蒋
2021/12/24
4890
Akina For Typecho主题修改记录分享
大多数博主,基本都换过各种类型的博客程序,WordPress、Typecho、hexo、Z-Blog等等太多了,最后选择Typecho,就是因为小巧不臃肿。本人一共使用过两款:Cactus来自仙岛驿站和Akina来自子虚之人。
目的地-Destination
2023/10/12
3650
Akina For Typecho主题修改记录分享
Typecho增加阅读时长统计
本文共 142 个字数,平均阅读时长 ≈ 1分钟 修改functions.php文件 底部增加,文件路径: /usr/themes/Joe 找一个风水宝地放以下代码 // 文章阅读时长设置 $onlineTime = new Typecho_Widget_Helper_Form_Element_Select( 'onlineTime', array( 'off' => '关闭(默认)', 'on' => '开启', ), 'on',
小东东
2023/03/20
4030
Typecho增加阅读时长统计
关于typecho的一些样式代码
循环页面、分类、标签 <!--循环显示页面--> <?php $this->widget('Widget_Contents_Page_List')->to($pages); ?>
用户7146828
2021/08/09
1.3K0
Typecho不使用插件实现Ajax评论功能
完善好的函数 function ajaxComment($archive){ $options = Helper::options(); $user = Typecho_Widget::widget('Widget_User'); $db = Typecho_Db::get(); // Security 验证不通过时会直接跳转,所以需要自己进行判断 // 需要开启反垃圾保护,此时将不验证来源 if($archive->request->get('_') != Helper::security()->getT
团团生活志
2022/08/16
5450
twitter主题实现前台发文章
博客原来主题是仿推特的一款主题,文章样式特别多,所以咱也是特别喜欢,也总喜欢搞来搞去的,今晚也是从 @XiaoFans 那里发现了新东西,实现主题前台的发文,前台发文挺新颖的,也是特别想动手实现一下,前台发文是博客的一大特点,可以更加方便,目前只能实现发送文章,后期 @XiaoFans 会加更多功能,上传图片和表情之类的,其他主题原理一样,过程适用于typecho博客,一起来学习下吧
qiangzai
2021/12/21
6760
twitter主题实现前台发文章
Typecho 如何开启外链转内链
把博客中的外部链接转换为网站内链,据说有利于搜索引擎收录。该插件主要由 benzBrake 大佬 编写,同时支持转换文章和评论中的链接。
季春二九
2023/03/22
8610
typecho 神马自动推送插件
在你的网站根目录/usr/plugins/ 目录下新建 smLinkSubmit.php文件 并把上面的代码填进去保存 然后到网站后台->插件列表->启用 smLinkSubmit 并填写网站域名 神马站长平台密钥 神马站长平台账号后保存即可
Inkedus
2020/04/16
1.7K1
typecho 神马自动推送插件
Typecho自定义调用如热门文章随机文章等
这是面向模板开发者的一篇干货文章,通过学习下面的两个事例,你可以通过调整数据库语句来实现自定义调用文章,如随机文章等。
泽泽社长
2023/04/17
6740
Typecho博客用Chatgpt写文章
 最近Chatgpt实在很火,用Chatgpt无论是来写文章还是写代码,都十分的高效,这对于我们来说,也不知道是好事还是坏事。但是由于它写文章实在是太便捷了,基本上几分钟可以出一篇高原创率的文章(有时候可能我们自己写的文章原创度都不如它生成的原创度高)。
傲绝
2023/03/08
7231
Typecho博客用Chatgpt写文章
typecho百度主动推送插件,利于SEO
插件设计代码: <?php /** * 百度站长工具 链接提交 * 发布、更新文章后,自动提交百度链接更新 * 详情请查看 http://dwz.cn/265Rcs * * @packa
Inkedus
2020/04/16
1.2K2
typecho常用函数及调用方法
24.获取最新评论列表第二个版本,只显示访客评论不显示博主也就是作者或者说自己发的评论
kenvie
2022/01/20
1.8K0
Typecho主题模板制作快速入门简易教程
Typecho主题的制作并不难,(以下称模板)只要写好了HTML和CSS,嵌套模板就非常简单了,无需了解标签的内部结构,只要会使用,就能迅速完成模板。
梦溪
2021/08/09
5.9K0
typecho源代码解析1 - 系统初始化
其次,这篇文章同thinkphp的源代码解析一样都是老高谋划了很久的文章,国庆节由于单位加班没有时间写,今天终于等来了轮休,果断放开了写。希望大家多多支持!
老高的技术博客
2022/12/28
6570
表情包(附上cutten emoji.json)代码
直接下载这个参考乔治博客里面的文件位置替换对应文件就可以了 注意:仅适用于cutten4 最新版本 emoji.json下载地址: https://cdn.jsdelivr.net/gh/LR787/image/usr/uploads/2021/02/3630647554.json ctx.php下载地址 https://cdn.jsdelivr.net/gh/LR787/cdn/php/ctx.php
meowrain
2021/04/22
3.9K0
表情包(附上cutten emoji.json)代码
相关推荐
Typecho回复可见功能
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验