- 里的图片地址:从
http://old.com/uploads/更换为http://new.com/uploads/。 - 里的外部链接:将所有指向
old-site.com的链接更改为new-site.com。 - 自定义字段里的地址:在产品模型中,有一个“购买链接”字段,需要批量更新。
下面我将为您提供几种最常用、最安全的方法,从简单到复杂,您可以根据自己的情况选择。

(图片来源网络,侵删)
使用DedeCMS自带的“内容替换”功能(最推荐,最安全)
这是DedeCMS系统内置的功能,专门用于批量替换文章内容,非常安全且高效,它不会影响数据库结构,只修改文章正文(body字段)。
适用场景:批量替换文章、图集内容里的图片路径、文字、链接等。
操作步骤:
-
登录后台:使用管理员账号登录您的DedeCMS后台。
(图片来源网络,侵删) -
进入功能:在左侧菜单中找到 -> 【批量维护】 -> 替换】,并点击进入。
-
设置替换参数:
- 替换范围:选择您要操作的内容类型,通常是 “文档”(即文章)。
- 栏目选择:选择您要替换内容的栏目,如果全站替换,可以选择“所有栏目”;如果只替换特定栏目,请勾选对应的栏目。建议先在一个小栏目测试。
- :这是您需要找到,旧图片地址
http://www.old-domain.com/uploads/。 - :这是您要替换成,新图片地址
http://www.new-domain.com/uploads/。 - 替换方式:通常选择 “全部替换”。
- 搜索HTML源码:务必勾选此项! 这是为了确保替换的是文章编辑器里插入的
<img src="...">标签里的地址,而不是纯文本,如果不勾选,可能会替换掉不该替换的文本。
-
执行替换:
- 确认所有参数设置正确后,点击页面底部的 “开始执行替换” 按钮。
- 系统会开始处理,并显示处理进度,处理完成后,会提示您成功替换了多少篇文章。
优点:

(图片来源网络,侵删)
- 官方功能,安全稳定。
- 操作简单,图形化界面。
- 只修改文章正文,不会误改其他数据。
缺点:
- 只能替换文章正文(
body字段)里的内容,无法直接替换自定义字段、标题等。
使用SQL命令直接操作数据库(高级,风险高)
替换”功能无法满足需求时(需要替换自定义字段里的地址),或者数据量极大时,可以考虑使用SQL命令。此方法有风险,操作前务必备份数据库!
适用场景:
- 批量替换自定义字段(如产品链接、下载地址等)。
- 批量替换文章标题里的地址。
- 需要更复杂的替换逻辑。
操作步骤:
-
备份数据库:这是最重要的一步!请务必在执行任何SQL操作前,通过phpMyAdmin或DedeCMS后台的“系统”->“数据库备份/恢复”功能,完整备份数据库。
-
登录phpMyAdmin:进入您的网站数据库管理工具(通常是cPanel面板里的phpMyAdmin)。
-
选择数据库:在左侧列表中选择您的DedeCMS数据库名。
-
执行SQL语句:在顶部菜单点击 “SQL”,在输入框中输入您的SQL语句。
示例1:批量替换文章正文(#@__archives表)里的图片地址
UPDATE dede_archives SET body = REPLACE(body, 'http://old-domain.com/uploads/', 'http://new-domain.com/uploads/');
#@__archives是DedeCMS的表前缀,如果你的表前缀不是dede_,请替换成你自己的。body是存储文章正文的字段名。REPLACE()是MySQL的字符串替换函数。
示例2:批量替换自定义字段(product_link)里的地址
假设您有一个产品模型,自定义字段名为 product_link,存储在 #@__addonproduct 表中。
UPDATE dede_addonproduct SET product_link = REPLACE(product_link, 'http://old-site.com/product/', 'http://new-site.com/product/');
#@__addonproduct是自定义字段所在的表名(不同模型表名不同,如#@__addonarticle等)。product_link是你的自定义字段名。
示例3:批量替换文章标题里的地址
UPDATE dede_archives SET title = REPLACE(title, '旧地址', '新地址');
- 执行:点击“执行”按钮,如果SQL语句正确,数据库就会被更新。
优点:
- 功能强大,可以修改数据库的任何字段。
- 效率极高,适合处理海量数据。
缺点:
- 风险极高!错误的SQL语句可能导致数据损坏或丢失。
- 需要一定的SQL知识。
- 直接操作数据库,绕过了DedeCMS的过滤机制。
使用第三方插件或工具
网上也有一些专门为DedeCMS开发的批量替换插件,或者一些可以批量处理文本的工具(如Notepad++的“替换”功能可以导出处理后重新导入)。
适用场景:
- 不想用SQL,又觉得内置功能不够用。
- 需要更复杂的批量处理逻辑。
操作方式:
- 在DedeCMS官方论坛或第三方资源网站搜索“批量替换插件”。
- 下载并按照插件的说明进行安装和使用。
- 使用这类工具时,同样要注意数据安全。
总结与建议
| 方法 | 优点 | 缺点 | 推荐度 |
|---|---|---|---|
| 内容替换 | 安全、简单、官方 | 功能有限,仅限正文 | ★★★★★ (首选) |
| SQL命令 | 功能强大、高效 | 风险高、需要技术 | ★★★☆☆ (仅限高级用户,必须备份数据库) |
| 第三方工具 | 功能可能更丰富 | 可靠性参差不齐,可能不兼容 | ★★☆☆☆ (作为补充选择) |
给您的最终建议:
- 首选方法一:对于绝大多数情况,使用后台的“内容替换”功能是最佳选择,它安全、方便,足以解决90%的批量替换需求。
- 测试先行:无论使用哪种方法,都建议先在一个小栏目或少量文章上进行测试,确认效果无误后再全面铺开。
- 备份!备份!备份!:如果必须使用方法二(SQL),请务必、务必、务必在操作前完整备份您的数据库,这是防止灾难性后果的唯一保障。
