第一步:基础检查(90%的问题出在这里)
请务必先确认以下几点,因为这是联动类型能否正常工作的前提。

(图片来源网络,侵删)
确认模型中是否正确绑定了联动类型
这是最最常见的原因,很多用户在后台添加了联动类型,但在发布内容时,忘记在对应的模型(比如文章、图集等)中将某个字段设置为“联动类型”。
- 操作路径:
- 进入
后台->核心->内容模型管理。 - 点击你要修改的模型(文章模型”)的
[修改]按钮。 - 在模型字段设置页面,找到你希望使用联动的字段。
- 检查该字段的“字段类型”是否为“联动类型”,如果不是,请将其修改为“联动类型”,并保存。
- 进入
确认联动类型数据是否已添加
后台的“联动类型管理”只是创建了“规则”,你还需要为这个规则添加具体的“数据项”。
- 操作路径:
- 进入
后台->核心->联动类型管理。 - 点击你创建的联动类型(品牌”)的
[管理]按钮。 - 检查里面是否有数据,如果没有任何数据,那么前台自然无法显示。
- 如果数据为空,请点击
[增加顶级选项]添加数据,顶级选项可以是“汽车”,其下级选项可以是“奔驰”、“宝马”等。
- 进入
确认联动类型是否已发布
联动类型和普通栏目一样,有一个“发布”状态,如果未发布,它就不会在前台生效。
- 操作路径:
- 进入
后台->核心->联动类型管理。 - 在联动类型列表页,找到你创建的类型。
- 检查
[默认]或[发布]列下是否有勾选或“是”字样,如果没有,点击[修改],将其状态设置为“是”,然后保存。
- 进入
第二步:数据与模板检查
如果基础配置都正确,但后台管理界面(比如内容发布页)里联动框还是一片空白或显示异常,那么问题可能出在数据或模板上。

(图片来源网络,侵删)
检查数据库表是否存在
联动类型的数据存储在 dede_sys_enum 表中,如果这个表不存在或损坏,联动数据将无法读取。
- 排查方法:
- 通过你的网站管理工具(如phpMyAdmin)登录数据库。
- 检查
dede_sys_enum表是否存在,如果不存在,你需要从原始的DedeCMS安装包中恢复这个表。 - 如果表存在,检查表中是否有你创建的联动类型的数据,可以在
envalue字段中搜索你的联动类型名称(brand”)。
检查缓存问题
DedeCMS有强大的缓存机制,有时缓存会导致旧配置或错误数据被优先读取。
- 解决方案:
- 进入
后台->系统->系统基本参数->性能选项。 - 点击
[更新全部缓存]按钮。 - 如果问题依旧,可以尝试删除
/data目录下的缓存文件(cache目录),然后重新登录后台。
- 进入
检查模板文件
联动类型在后台管理界面(如内容发布页)的显示,是通过一个固定的模板文件 templets/one_addstep_soft.htm(这个文件通常用于软件模型,但联动类型的显示逻辑是通用的)。
- 排查方法:
- 用FTP或文件管理器,打开
dede/templets/one_addstep_soft.htm文件。 - 在文件中搜索
{dede:myform}或类似的标签,找到渲染联动类型字段的代码,通常它会是类似这样的结构:<tr> <td height="24" colspan="2" bgcolor="#FBFCE2"><strong>品牌:</strong></td> </tr> <tr> <td height="24" colspan="2"> {dede:linkage name='brand' type='son' /} </td> </tr> - 关键点:检查
{dede:linkage ... /}标签中的name属性值,是否和你后台创建的“联动类型名称”完全一致(包括大小写和空格),这是最容易出错的地方之一。 - 确认模板文件没有被误删或修改过,如果不确定,可以从DedeCMS官方下载包中复制一个原始的
one_addstep_soft.htm文件覆盖。
- 用FTP或文件管理器,打开
第三步:代码与文件检查
如果以上所有步骤都确认无误,问题可能就比较深入了,需要检查程序文件。

(图片来源网络,侵删)
检查核心PHP文件
联动功能的逻辑主要在 dede/linkage.lib.php 文件中,如果这个文件损坏或丢失,联动功能将完全失效。
- 解决方案:
- 通过FTP检查
/dede/linkage.lib.php文件是否存在。 - 如果文件不存在,请从DedeCMS的官方安装包中重新上传这个文件。
- 如果文件存在,但内容可能不完整或被修改过,也建议用官方文件进行覆盖。
- 通过FTP检查
检查JS文件
联动类型的前端交互依赖于JavaScript,如果JS文件加载失败,可能会导致联动框无法展开或选择。
- 排查方法:
- 在浏览器中打开内容发布页面。
- 按下
F12键打开开发者工具。 - 切换到
Console(控制台)选项卡,查看是否有红色的JS错误提示。 - 切换到
Network(网络)选项卡,查看是否有JS文件(如linkage.js)加载失败(通常会显示404错误)。 - 确认
/dede/js/linkage.js文件存在且可访问。
总结与排查清单
遇到“Dede联动后台无显示”问题,请按以下清单逐一排查:
- [ ] 模型字段:检查发布内容的模型,联动字段是否已设置为“联动类型”?
- [ ] 联动数据:进入“联动类型管理”,检查该类型下是否已添加数据项?
- [ ] 发布状态:检查联动类型是否已“发布”?
- [ ] 模板标签:检查后台模板文件(如
one_addstep_soft.htm)中{dede:linkage}标签的name属性是否正确? - [ ] 数据库表:检查
dede_sys_enum表是否存在且包含你的联动数据? - [ ] 清除缓存:尝试在后台更新缓存或删除
/data/cache目录。 - [ ] 核心文件:检查
/dede/linkage.lib.php是否存在且完整? - [ ] JS文件:检查
/dede/js/linkage.js是否加载正常?
按照这个流程,99%的“联动后台无显示”问题都能得到解决,如果所有步骤都试过还是不行,那么可能是你的DedeCMS程序文件损坏严重,建议考虑备份好数据后,重新覆盖一套完整的程序文件。
