给你的typecho分类添加缩略图标
7个月前 把下面的代码添加到“functions.php”文件中 $fenlei = new \Typecho\Widget\Help...
为什么要过滤侧边栏评论内容?
例如:你的模板中有个私密功能,有网友使用该功能后侧边栏去能看见私密的内容这就非常不符合私密这个功能。这时候就需要通过过滤去掉相关部分内容。
理论上来说可以通过插件的接口进行过滤操作,由于本人懒就没有找这方面的代码。
/**
- @description: 获取文章摘要
- @param {*} $that 文章对象
- @param {*} $maxLength 最大长度
- @param {*} $a 是否开启表情解析
- @param {*} $b 是否开启过滤模式
- @param {*} $c 判断开启那种模式过滤
- @Date: 2023-03-25 00:12:20
- @Author: mulingyuer
/
function getArticleSummary($that, $maxLength = 120,$a = true,$b = false,$c = true)
{
//不建议在这里使用短代码解析,否者后面截取的内容会出现各种问题
$content = $that->content;
$abstract = Typecho_Common::fixHtml(Typecho_Common::subStr($content, 0, $maxLength, "..."));
if (empty($abstract)) {
$abstract = '';
}
$abstract = preg_replace('/<(.+?)>(.+?)<\/(.+?)>/',"$2", $abstract);
$abstract = preg_replace('/<(.+?)>(.+?)/',"$2", $abstract);
if ($a === true){
//注意这里是解析表情操作,如果要使用需要自行替换成相关模板中代码
$abstract = self::biaoqing(htmlspecialchars($abstract));
}else{
$abstract = htmlspecialchars($abstract);
}
//判断是否启用过滤模式
if ($b === true){
//过滤评论ubb代码,反之过滤文章ubb代码
if ($c === true){
//关于下面如果要做多重判断,由于有点时候所截取的内容中短代码标签不完整,所以遇到短代码不完整的情况宁愿错误过滤,也不要放过。
if (strpos($abstract, '{secret') !== false) {
if (strpos($abstract, '{/secret') !== false) {
$abstract = preg_replace("/{secret}(.+?){\/secret}/sm",'嘿嘿,这是一条私密评论。',$abstract);
}else{
$abstract = preg_replace("/{secret}(.)/sm",'嘿嘿,这是一条私密评论。',$abstract);
}
}
}
}
return $abstract;
}
侧边栏评论使用方法
<?php \Widget\Comments\Recent::alloc()->to($comments); ?>
<?php while ($comments->next()): ?>
<?php echo getArticleSummary($comments,35,true,true); ?>
<?php endwhile; ?>
#免责声明#
本文为转载 或 原创内容,未经授权禁止转载、摘编、复制及镜像使用、转载请注明作者、出处及原文链接、违者将依法追究责任。
7个月前 把下面的代码添加到“functions.php”文件中 $fenlei = new \Typecho\Widget\Help...

7个月前 ##### 一、卸载前:做好充分准备与依赖检查 **备份关键数据** 备份插件关...

7个月前 > 下面是博主给AI提出的代码原型,各位网友你们觉得哪个效率高? `...

7个月前 > **例如:**有时候需要把动态页面(前提是动态页面功能是通过评论改的)...

8个月前 进行更新微博客程序的时候,准备重新修改一下评论插件的回复表单定位问...

7个月前 第一步需要添加两个css样式,一个为有内边距或者外边距的样式,一个为什...