当前位置: 首页 > cms教程

帝国cms自定义函数解决简介截取字符出现html代码的问题

时间:2026-02-01 13:22:47

帝国CMS发布信息时,会默认从详情内容中截取前面一段内容作为简介,但有时会截取出html代码,非常不爽,通过本教程可以解决。

首先在 e/class/connect.php 文件中加入一个自定义函数 比如 NoHTML() 这个自己喜欢随便设置

//去除HTML标记 function NoHTML($string){ $string = preg_replace("'<script[^>]*?>.*?</script>'si", "", $string);//去掉javascript $string = preg_replace("'<[/!]*?[^<>]*?>'si", "", $string); //去掉HTML标记 $string = preg_replace("'([rn])[s]+'", "", $string); //去掉空白字符 $string = preg_replace("'&(quot|#34);'i", "", $string); //替换HTML实体 $string = preg_replace("'&(amp|#38);'i", "", $string); $string = preg_replace("'&(lt|#60);'i", "", $string); $string = preg_replace("'&(gt|#62);'i", "", $string); $string = preg_replace("'&(nbsp|#160);'i", "", $string); //以下为屏蔽电话号码正则$string= preg_replace('/(0[0-9]{2,3}[-]?[2-9])[0-9]{3,4}([0-9]{3}[-]?[0-9]?)/i','$1****$2',$string);//隐藏电话号码中间四位$string = preg_replace('/(1[358]{1}[0-9])[0-9]{4}([0-9]{4})/i','$1****$2',$string);//隐藏手机号码中间四位//屏蔽电话号码正则结束return $string; } 然后去列表内容模板修改代码即可

$r[smalltext]=esub(NoHTML($r[smalltext]),200,'......'); $listtemp='<li><strong><a href="[!--titleurl--]">[!--title--]</a></strong><p>[!--smalltext--]</p></li>';这样问题就解决了,很简单吧。


上一篇:帝国cms自定义页面里面调用当前文章的父栏目
下一篇:帝国cms Warning: implode(): Invalid arguments passed in解决方法
函数 帝国cms 帝国cms教程 建站
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素