互补网网专做高品质CMS教程,所有教程均为站长亲测有效后发布。
您当前所在位置:互补网首页 > PHPCMS > 常见问题 >

phpcms v9内容页标题无法显示的解决方法

发布时间:2023-11-14热度:0

内容页标题不显示,经过反复检查,这是phpcms的一个bug, 原因如下:

1.

caches/caches_model/caches_data/content_output.class.php(原始代码文件为

modules/content/fields/title/output.inc.php)的title函数中使用了htmlspecialchars对标题进行转义, 但这个函数使用时要指定编码(默认为utf-8),而phpcms并没有指定此编码,导致php以utf-8解析gbk标题,从而导致标题为空。

如果是utf-8版本的phpcms,则不存在这个问题。

使用以下方法解决这个问题:

1. 修改

modules/content/fields/title/output.inc.php,将第二行修改为

$value = htmlspecialchars($value, null, gb2312);

2.更新全站缓存

3. 重新生成所有内容页

一起来看一篇关于phpcms文章内容不显示即htmlspecialchars导致中文丢失问题的解决办法,如果你帮到这类问题可以参考本文章来试着解决了。

phpcms2008sp4的gbk版本在后台编辑文章时发现标题、内容等不显示,

phpcms2008sp编辑内容不显示

经排查发现phpcms2008sp4在处理文章信息时使用的即htmlspecialchars参数问题导致了中文丢失(在php5.4/5.5版本需补全参数)。直接使用htmlspecialchars($data[$field], ENT_QUOTES)返回空值,没有作任何处理。

解决方法:

在 data\cache_model\content_form.class.php中查找

$value = isset($data[$field]) ? htmlspecialchars($data[$field], ENT_QUOTES) : ;

修改为:

$value = isset($data[$field]) ? htmlspecialchars($data[$field], ENT_QUOTES,GB2312) : ;

本文地址:http://www.25923.com/Phpcms/ask/1114220.html(转载请保留)