?
说明:仅是gbk版本的phpcms v9存在此问题
内容页标题不显示,经过反复检查,这是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. 重新生成所有内容页
?
如果是utf-8, 则不存在此问题。
?
?
另外,在新建立站点时,尽量使用utf-8编码,能避免很多问题。