帝国CMS将双引号显示成& rdquo;残缺!好在能解决

2017-05-12 819 0

没有任何CMS是完美的,不论是使用DEDE织梦还是帝国CMS建设网站,常会发现随着网站的调整出现这样那样的小问题,有时莫名其妙得让人抓耳挠头。这不,华哥在首页模板使用帝国CMS灵动标签读取文章摘要时,就出现把双引号显示为”如下图:

双引号显示为”

尼玛!帝国功能那么强却自带这样的小BUG,这不是残缺嘛!看来和这部香港老电影有得一拼!

残缺

别看是个小小的问题,这还需要修改帝国CMS的系统文件才能搞定呢!

原因:

正常情况下,帝国CMS会自动提取正文内容里的前部分文字为简介,但有时候正文里有特殊的字符,这样就会导致自动提取简介的时候会产生”,其实是帝国没有完成过滤掉特殊的字符。

解决办法:

打开文件e/class/connect.php

找到函数 sub($string,$start=0,$length,$mode=false,$dot='')

将其中的代码

$string = str_replace(array('&nbsp;','&amp;','&quot;','&lt;','&gt;','&#039;'), array(' ','&','"','<','>',"'"), $string);
替换为

$string = str_replace(array('&nbsp;','&amp;','&quot;','&lt;','&gt;','&#039;','&ldquo;','&rdquo;'), array(' ','&','"','<','>',"'",'“','”'), $string);

帝国CMS的系统文件

1.如上图,如按教程查找,那么长的代码,你可能会什么也找不到,因此华哥只用start=0来进行查找,最终在922行找到,有了图后,以后搜索“字符截取函数”应该更容易找到,不过要注意的是,此操作环境是帝国CMS7.2,其他版本未知。

2.改帝国CMS的系统文件是很有风险的,为了防止出错(有时粘贴过来的代码格式不纯净),有后悔药可以吃,华哥将原来的代码进行了注释,然后再复制粘贴上文解决方法中的代码。

上传后,发现OK。

双引号

举一反三,遇到其它类似情况在这里添加要替换的字符和替换后的字符即可。

本教程来自网络,由华哥在帝国CMS7.2版本和学而行营销网实践通过。

相关文章

wordpress6.5升级至6.8有风险!不得不采取曲线救国方式来解决
国际择校信息平台开发手记:5+2=23,均瑶集团下属的“世外教育系国际学校”,在上海究竟有多少所?
迅睿CMS后台内容加载不出来,解决方式是升级至最新框架及建站系统,附离线包升级实操记录
择校信息平台开发手记:2025中国国际化学校排名100强,有两家比均瑶集团旗下上海世外学校更强?
超好用!营销人木木老贼推荐“智谱清言 ”8个人工智能体AI工具
wordpress技术贴:缓存插件导致网站乱码、关键词自动加外链并标识

发布评论