⚠️ 操作前必读(非常重要!)
在执行任何删除操作之前,请务比完成以下步骤:

(图片来源网络,侵删)
- 备份网站数据!
- 数据库备份:进入网站的后台,找到【系统】->【数据库备份/还原】,执行一次完整的数据库备份,这是最关键的步骤,以防操作失误后可以恢复。
- 文件备份:将你的网站根目录(特别是
/templets/和/data/目录)进行备份。
- 明确要删除的字段:确定你要删除的是哪个自定义字段,并了解这个字段在哪些模板中被使用过。
通过DedeCMS后台直接删除(最常用)
这是最直接、最安全的方法,适用于大多数情况。
操作步骤:
-
登录DedeCMS后台 使用管理员账号登录你的网站后台。
-
进入模型管理
- 在左侧菜单栏,找到并点击【核心】。
- 在【核心】菜单下,点击【内容模型管理】。
-
选择并编辑模型
(图片来源网络,侵删)- 模型管理页面,你会看到网站中所有可用的模型,文章”、“图集”、“软件”等。
- 找到你的自定义字段所属的那个模型(比如是给“文章”模型添加的字段,就点击“文章”后面的【管理字段】或【修改】按钮)。
-
进入字段管理并删除
- 点击后,会进入该模型的字段管理页面,这里列出了所有字段,包括系统自带的和自定义的。
- 找到你想要删除的那个自定义字段,点击其后面的【删除】按钮。
-
确认删除
- 系统会弹出一个确认对话框,再次确认你要删除的字段名称,然后点击【确定】。
- 删除成功后,系统会提示你操作完成。
方法一的局限性
- 可能无法删除:如果这个自定义字段在网站的某个模板文件(通常是
article_article.htm或list_article.htm等内容页模板)中被直接调用({dede:field.myfield/}),后台的删除功能可能会被禁用,或者删除后模板中仍然会残留代码,导致页面显示错误。 - 残留代码:即使后台删除成功,如果模板里还有调用该字段的代码,你需要手动去模板文件里删除它,否则页面可能会报错或显示异常。
手动删除数据库记录(适用于后台无法删除的情况)
如果方法一中的【删除】按钮是灰色的,或者删除后页面仍然有问题,就需要采用手动操作数据库的方式。
操作步骤:
-
准备工具
(图片来源网络,侵删)- 你需要一个可以连接和管理数据库的工具,最常用的是 phpMyAdmin,大多数虚拟主机都提供了这个工具,你可以在主机控制面板里找到。
-
登录phpMyAdmin并选择数据库
- 登录你的phpMyAdmin。
- 在左侧的数据库列表中,选择你的DedeCMS网站所使用的数据库。
-
删除
dede_arctype表中的记录(可选,但推荐)- 这个表存储了栏目的附加字段信息,如果你的自定义字段是绑定到特定栏目的,最好在这里也检查一下。
- 点击
dede_arctype表。 - 点击【浏览】查看所有记录。
- 点击【搜索】,在“字段”中选择
addtable,在“值”中输入你的自定义字段所在的附加表名(通常是dede_addonarticle或其他dede_addon*表),然后点击【执行】。 - 找到对应的记录,如果里面有你的字段定义,可以删除它。(此步骤比较复杂,新手可以跳过,直接下一步)
-
删除主表中的字段定义(关键步骤)
- 找到对应的附加表:你的自定义字段数据通常存储在附加表中,这个表的名字是根据你的内容模型来的,比如文章模型的附加表是
dede_addonarticle,图集模型是dede_addonimages,不确定的话,可以去dede_arctype表里查。 - 删除字段定义:
- 点击你的附加表(
dede_addonarticle)。 - 点击【结构】选项卡。
- 在字段列表中,找到你的自定义字段名,点击其后面的【删除】图标(通常是一个红色的小叉)。
- 点击你的附加表(
- 找到对应的附加表:你的自定义字段数据通常存储在附加表中,这个表的名字是根据你的内容模型来的,比如文章模型的附加表是
-
删除
dede_sysconfig表中的记录(清理后台缓存)- 这个表存储了系统的配置信息,包括自定义字段的缓存。
- 点击
dede_sysconfig表。 - 点击【浏览】。
- 点击【搜索】,在“字段”中选择
varname,在“值”中输入你的自定义字段名,然后点击【执行】。 - 找到搜索结果,如果存在,将其删除,这一步是为了清除后台缓存,防止字段在后台“幽灵”般地出现。
-
清理模板文件
- 通过FTP或文件管理器,登录你的网站服务器。
- 进入
/templets/目录,找到调用该字段的模板文件(例如文章页模板article_article.htm,列表页模板list_article.htm等)。 - 用代码编辑器(如Dreamweaver、VS Code或Notepad++)打开这些文件。
- 找到所有调用该自定义字段的代码,
{dede:field.myfield/}或[field:myfield/],并将其彻底删除。 - 保存并上传修改后的模板文件。
-
更新缓存
回到DedeCMS后台,点击顶部菜单的【系统】->【一键更新网站】->【更新系统缓存】,点击【开始执行】。
总结与对比
| 特性 | 方法一(后台删除) | 方法二(手动数据库) |
|---|---|---|
| 优点 | 简单、安全,系统自动处理关联关系。 | 功能强大,能解决后台无法删除的所有问题。 |
| 缺点 | 依赖模板,如果模板未更新会出错,且可能被禁用。 | 操作复杂,有风险(误删其他数据),需要数据库知识。 |
| 适用场景 | 日常维护,字段未被模板直接调用,或新手操作。 | 后台删除按钮无效,或删除后页面仍有错误。 |
| 风险等级 | 低 | 中高(需谨慎操作) |
建议操作流程:
- 优先尝试方法一。
- 如果方法一成功,务必检查并清理模板文件中的残留代码。
- 如果方法一失败(按钮灰色)或失败后仍有问题,再谨慎使用方法二,并严格按照步骤操作,且操作前一定备份数据库。
希望这份详细的指南能帮助你成功删除DedeCMS的自定义字段!
