因为dedecms织梦图集模型编辑文档会默认过滤:

checkbox多选字段失效

逗号被过滤

tag标签的逗号失效


解决方法

1、打开 /include/helpers/filter.helper.php 找到

'/([\x00-\x08,\x0b-\x0c,\x0e-\x19])/'

改成

'/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]+/S'


2、打开 /include/datalistcp.class.php 找到

'/([\x00-\x08,\x0b-\x0c,\x0e-\x19])/'

改成

'/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]+/S'


3、打开/dede/album_edit.php 搜索

$arcRow=XSSClean($arcRow);$addRow=XSSClean($addRow);

删除。


二、织梦图集勾选多个副栏目,只显示一个的问题:

打开/include/helpers/archive.helper.php 这个文件,156行,这一段代码

$typeid2 = intval($typeid2);

删除。


打开/include/taglib/arclist.lib.php第156行左右

将下面的代码

if($CrossID=='') $orwheres[] = ' arc.typeid in ('.GetSonIds($typeid).')';
else $orwheres[] = ' arc.typeid in ('.GetSonIds($typeid).','.$CrossID.')';

修改为

if($CrossID=='')
$orwheres[] = ' typeid in ('.GetSonIds($typeid).') or typeid2 in ('.GetSonIds($typeid).')';
else
$orwheres[] = ' typeid in ('.GetSonIds($typeid).','.$CrossID.') or typeid2 in ('.GetSonIds($typeid).','.$CrossID.')';