⚠️ 重要提醒:操作前务必备份!
在进行任何数据库操作之前,强烈建议您先备份整个网站(包括程序文件和数据库),这样即使操作失误,也可以轻松恢复。

(图片来源网络,侵删)
使用DedeCMS自带的功能(最安全、最推荐)
这是最直接、最安全的方法,利用DedeCMS的内置机制来处理。
场景1:删除文章时,同时删除文章内的图片
DedeCMS在删除文章时,有一个选项可以一并删除文章内容中上传的图片。
- 登录您的DedeCMS后台。
- 管理】 -> 【一键删除】。
- 在删除文章的页面,找到您要删除的文章列表,勾选它们。
- 关键步骤:在页面底部的“批量处理”选项中,勾选“删除文章同时删除缩略图及图片”。
- 点击“确定删除”按钮。
这样,DedeCMS会自动解析文章内容,找到所有上传到 /uploads/ 目录下的图片,并将它们从服务器上删除,同时也会删除文章记录。
场景2:清理孤立图片(无文章引用的图片)
由于各种原因(如直接删除图片文件、文章内容被误删等),服务器上会存在一些没有被任何文章引用的“垃圾图片”,DedeCMS提供了一个清理工具。

(图片来源网络,侵删)
- 登录DedeCMS后台。
- 进入【系统】 -> 【数据库备份/恢复】。
- 在这个页面,找到左侧菜单栏的 【数据优化】。
- 点击进入后,找到 【数据库内容修复】。
- 修复”页面,找到 【检查并删除孤立图片】 这个选项。
- 点击“执行”或“开始”按钮,系统会自动扫描数据库和
uploads目录,找出没有被文章记录引用的图片,并询问您是否删除,请仔细确认后再操作。
使用SQL语句直接操作数据库(高级用户,需谨慎)
如果您需要批量删除大量图片,或者想实现更灵活的控制,可以使用SQL语句。请务必在操作前备份数据库!
场景1:删除指定栏目ID下的所有文章及其图片
假设您要删除栏目ID为 5 的所有文章及其图片。
-
第一步:获取所有文章的ID 您需要找出该栏目下所有文章的ID,因为图片的路径通常存储在这些文章的内容里。
SELECT id FROM dede_archives WHERE typeid = 5;
dede_archives是文章主表,typeid是栏目ID字段。- 请将
5替换为您要删除的栏目ID。
-
第二步:批量删除文章 获取到ID列表后,您可以一次性删除这些文章记录。
(图片来源网络,侵删)DELETE FROM dede_archives WHERE typeid = 5;
- 注意:这个命令只会删除
dede_archives表中的记录,文章内容(在dede_addonarticle或其他附加表中)和图片文件不会被删除,所以必须结合方法一的第一步操作,或者使用下面的方法。
- 注意:这个命令只会删除
-
第三步:删除文章内容表(如果附加表存在) 如果您的文章使用了附加表(如文章模型),也需要一并删除。
-- 假设文章模型ID为1,附加表为 dede_addonarticle DELETE FROM dede_addonarticle WHERE aid IN (SELECT id FROM dede_archives WHERE typeid = 5);
aid是附加表关联文章主表id的字段。
场景2:删除指定路径的图片(危险操作)
这种方法非常危险,因为它只根据路径删除文件,而不会检查数据库中是否还有文章引用这些图片。极有可能导致文章显示“图片不存在”的破碎链接。
请仅在您100%确定这些图片没有被任何文章引用时使用!
- 登录到您的网站服务器,通过FTP或SSH文件管理工具。
- 进入DedeCMS的
uploads目录。 - 找到您要删除的图片所在的子文件夹(
uploads/allimg/)。 - 直接选中并删除这些图片文件。
使用FTP/SFTP工具手动删除(最直接,但风险最高)
这种方法与方法二的第三步类似,但更侧重于文件层面。
- 通过FTP/SFTP连接您的服务器。
- 导航到
您的网站目录/uploads/。 - 根据您需要删除的图片类型,进入相应的子文件夹,
uploads/allimg/(文章默认图片目录)uploads/flv/(视频文件目录)uploads/images/(通用图片目录)
- 仔细检查,确保您要删除的文件夹或文件没有被其他地方引用。
- 删除选定的文件或整个文件夹。
总结与建议
| 方法 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 自带功能 | 最安全,自动处理数据库和文件关联,避免数据不一致。 | 功能相对固定,不够灵活。 | 日常维护、删除文章、清理垃圾图片的首选。 |
| SQL语句 | 效率高,适合批量处理复杂的逻辑。 | 风险高,需要懂SQL,操作失误可能导致数据丢失或网站错误。 | 需要高级、批量操作,且对数据库结构非常了解的用户。 |
| FTP手动 | 最直接,可视化操作。 | 风险极高,极易造成“孤图”或“断链”,破坏网站完整性。 | 仅在万不得已且完全清楚后果时使用,如迁移服务器前清理。 |
给您的最终建议:
- 对于普通用户,请优先使用【方法一】,这是DedeCMS官方设计的正确工作流程。
- 对于有一定技术能力的用户,如果需要批量删除栏目,可以先使用【方法二】的SQL语句删除数据库记录,但务必在后台删除文章时勾选“删除图片”选项,或者手动执行【方法一】的清理孤立图片功能作为二次检查。
- 除非您有特殊需求且承担全部风险,否则不要轻易使用【方法三】。
