第一步:基础排查(最常见的原因)
这部分问题占了90%以上,请务必先检查。

检查模板代码是否正确
这是最核心的一步,图片集模板的核心在于 dede:productimagelist 和 dede:imglist 这两个标签。
标准图片集模板代码结构应该是这样的:
{dede:field name='body'/}
这行代码会调用文章正文,也就是你在后台编辑器里插入的“图集内容”,为了让它正确显示图片集,你需要确保:
- 在后台编辑器里插入图片时,必须使用“图片集”功能,而不是直接上传单张图片。
- 进入文章编辑页 -> 点击“插入图片集”按钮 -> 上传多张图片 -> 填写图片说明 -> 插入。
- 这样生成的正文内容才是一个结构化的图片集列表。
检查 include/arc.archives.class.php 文件(致命原因)
这是一个非常关键的文件,它负责解析文章内容,在较新版本的DedeCMS中(如V5.7),这个文件里可能缺少了对图片集的特殊处理代码,导致 dede:field name='body'/ 无法正确解析出图片集。

解决方案:
- 打开你的
include/arc.archives.class.php文件。 - 查找
GetContentImgUrl($body)这个函数。 - 在这个函数内部,找到处理
img标签的preg_replace语句块。 - 关键一步: 在处理
img标签的代码块里,找到$body = preg_replace("/<img([^>]+)>/is", "", $body);这一行。请务必删除这行代码!
为什么删除?
这行代码的本意是提取文章中的第一张图片作为缩略图,但在处理过程中,它会把正文里的所有 <img> 标签都替换成空,导致图集无法显示,删除它,让 dede:field name='body' 能够完整地输出图集的HTML结构。
注意: 删除这行后,如果你还需要自动提取文章第一张图作为缩略图,需要通过其他方式实现,比如使用 {dede:field.body function='GetOneImgUrl(@me)'/},但这不是必须的。
检查栏目是否设置为“图片集”
图片集类型的文章必须存放在“图片集”类型的栏目里。

- 进入后台【核心】-> 【栏目管理】-> 找到你的文章所在的栏目。
- 点击【修改】,在栏目设置中,“栏目类型”必须选择“图片集”,如果不是,请修改并保存。
第二步:进阶排查
如果第一步的检查都做了,问题依旧,那么请进行以下排查。
检查是否生成静态HTML
图片集模板通常需要生成静态HTML才能正常工作,如果你开启了“仅动态浏览”,某些JS效果可能会失效。
- 进入后台【系统】-> 【系统基本参数】 -> 【核心设置】。
- 检查 “是否使用HTML静态页面” 的选项,建议选择 “是”,并确保你的文章已经点击了【生成HTML】。
检查模板标签调用
为了图集的特效(如JS幻灯片),模板里会调用额外的JS和CSS文件,或者使用特定的循环标签。
- 检查JS和CSS文件路径: 模板文件中引入的
js和css文件路径是否正确?<script src="{dede:global.cfg_cmspath/}/images/js/jquery-1.4.2.min.js"></script>,请确保{dede:global.cfg_cmspath/}能正确解析到你的网站根目录。 - 检查循环标签: 有些模板可能会用
{dede:imglist}或{dede:imagelist}来手动循环调用图片,请确保这些标签的属性(如row='20')设置正确,并且它们与{dede:field name='body'/}不冲突,通常情况下,直接使用{dede:field name='body'/}即可。
检查缓存问题
DedeCMS有很强的缓存机制,有时候修改了模板或代码,但网站显示的还是旧的样子。
- 清除系统缓存: 进入后台【系统】-> 【数据备份/恢复】 -> 【SQL命令行工具】,在命令行里输入
optimize dede_arccache;然后执行,这可以清除所有文章的缓存。 - 更新栏目缓存: 在【栏目管理】里,随便修改一个无关紧要的栏目,然后保存,这会强制更新栏目缓存。
- 浏览器缓存: 按
Ctrl + F5强制刷新浏览器,清除本地缓存。
第三步:终极解决方案 - 手动修改模板
如果以上方法都无效,可能是你的模板文件本身就有问题,最稳妥的办法是使用一个已知可用的标准图片集模板。
- 备份你当前有问题的模板文件 (
article_image.htm)。 - 下载一个标准的DedeCMS图片集模板,你可以在网上搜索 “dedecms 图片集模板下载” 找到很多资源。
- 用新的模板文件覆盖你原来的
article_image.htm。 - 进入后台,找到一篇图集文章,点击“更新”或者重新生成HTML。
总结与操作清单
当你遇到“DedeCMS图片集模板不管用”时,请按以下顺序检查:
- 【后台编辑】:确认文章是用“插入图片集”功能创建的,而不是直接上传单图。
- 【栏目设置】:确认存放文章的栏目类型是“图片集”。
- 【核心文件】:打开
include/arc.archives.class.php,找到并删除preg_replace("/<img([^>]+)>/is", "", $body);这一行代码。 - 【生成HTML】:确认网站开启了静态HTML,并为该图集文章生成了静态页面。
- 【清除缓存】:清除系统缓存和浏览器缓存。
- 【模板文件】:如果以上都无效,考虑替换
article_image.htm模板文件为一个新的标准模板。
按照这个流程,99%的图片集问题都可以得到解决,如果问题依然存在,请提供你的 网站地址、使用的DedeCMS版本 以及 遇到的具体错误现象(例如是空白、还是只显示一张图、还是报错等),这样能更精确地定位问题。
