帝国 CMS 批量替换文章内容关键词链接 SQL 语句大全|批量改域名、替换文字、清理死链、修改图片地址一键执行
时间:2026-07-30 20:58:32 来源:aliz.cn 作者:SKY 阅读:
前言
运营帝国 CMS 站点过程中,经常遇到批量修改需求:换域名后正文图片全部旧链接、统一替换违规关键词、删除外部垃圾锚文本、批量替换下载地址、修正错误栏目跳转 URL。 如果手动几百上千篇文章逐个编辑,耗时耗力还容易漏改。帝国 CMS 后台自带 SQL 执行入口,通过 REPLACE 函数可一键全局批量替换数据库内容,几秒完成全站修改。 本文所有 SQL 均基于默认数据表前缀
phome_编写,若你的数据库表前缀已修改,同步替换前缀即可,执行前务必先备份数据库。
重要前置提醒(必看,防止数据出错)
- 执行 SQL 前必须宝塔 / 后台完整备份数据库,出错可一键回滚;
- 数据表前缀默认
phome_,自行修改过前缀需全部同步替换; - 替换内容包含单引号、特殊符号需要转义,避免 SQL 报错;
- 执行路径:帝国后台 → 系统 → 数据更新 → 执行 SQL 语句;
- 执行完成后:更新栏目缓存、更新信息缓存、重新生成静态页面。
一、最常用:更换域名批量替换正文图片 / 链接(换域名搬家核心)
1.1 替换新闻正文内容里旧域名(使用最多)
sql
-- 替换文章正文内容旧域名为新域名
UPDATE phome_ecms_news SET newstext=REPLACE(newstext,'https://旧域名.com','https://新域名.com');
-- 替换文章SEO标题链接、跳转链接
UPDATE phome_ecms_news SET titleurl=REPLACE(titleurl,'https://旧域名.com','https://新域名.com');
-- 替换下载附件文件地址
UPDATE phome_enewsfile SET filename=REPLACE(filename,'https://旧域名.com','https://新域名.com');
1.2 全站统一 HTTP 强制替换为 HTTPS
sql
UPDATE phome_ecms_news SET newstext=REPLACE(newstext,'http://','https://');
UPDATE phome_ecms_news SET titleurl=REPLACE(titleurl,'http://','https://');
二、批量替换文章文字、关键词、品牌词、违规词
2.1 正文全局替换指定文字
sql
-- 把正文所有“A关键词”批量替换为“B关键词”
UPDATE phome_ecms_news SET newstext=REPLACE(newstext,'旧文字内容','新文字内容');
2.2 文章标题批量替换文字
sql
UPDATE phome_ecms_news SET title=REPLACE(title,'旧标题文字','新标题文字');
2.3 文章摘要、简介批量替换
sql
UPDATE phome_ecms_news SET smalltext=REPLACE(smalltext,'旧内容','替换后的内容');
2.4 批量删除正文某一段固定垃圾文本(比如广告、无效版权)
直接将第二个参数留空,等于删除对应内容:
sql
UPDATE phome_ecms_news SET newstext=REPLACE(newstext,'需要删除的整段文字','');
三、批量替换超链接、锚文本、死链清理 SQL
3.1 批量删除全站某一条外部死链接
sql
UPDATE phome_ecms_news SET newstext=REPLACE(newstext,'<a href="https://失效域名.com">锚文本</a>','');
3.2 批量替换外链为站内链接
sql
UPDATE phome_ecms_news SET newstext=REPLACE(newstext,'https://外链地址','https://本站内页地址');
四、图片附件专项批量替换(搬家裂图修复专用)
4.1 批量修改图片目录路径(附件文件夹迁移)
sql
UPDATE phome_ecms_news SET newstext=REPLACE(newstext,'/d/upload/','/d/file/');
4.2 批量清除图片 width、height 固定宽高属性(自适应修复)
sql
UPDATE phome_ecms_news SET newstext=REPLACE(newstext,'width="600"','');
UPDATE phome_ecms_news SET newstext=REPLACE(newstext,'height="400"','');
五、其他实用场景 SQL 语句
5.1 批量给所有文章关键词增加统一后缀
sql
UPDATE phome_ecms_news SET keywords=CONCAT(keywords,',统一长尾词');
5.2 清空所有文章自定义跳转链接
sql
UPDATE phome_ecms_news SET titleurl='';
5.3 批量替换下载文件存储路径
sql
UPDATE phome_enewsfile SET filename=REPLACE(filename,'/d/download/','/d/file/download/');
六、多栏目 / 指定栏目批量替换(精准执行,不全局改动)
只对栏目 ID=12 的文章执行替换,避免全站误操作:
sql
UPDATE phome_ecms_news SET newstext=REPLACE(newstext,'旧内容','新内容') WHERE classid=12;
多个栏目 ID 用逗号分隔:
WHERE classid IN(12,15,18)
七、执行后必做的 3 步收尾操作(不做不生效)
- 后台【系统→数据更新】执行:更新栏目缓存、更新信息缓存、更新标题缓存;
- 批量重新生成所有栏目静态 HTML 页面;
- 清除浏览器缓存、CDN 缓存,前台刷新查看替换效果。
八、执行报错常见问题解决
- SQL 提示表不存在:核对数据表前缀是否为
phome_,修改为自己数据库实际前缀; - 特殊符号执行失败:内容里的单引号
'改为两个单引号''转义; - 替换后前台不变化:90% 是静态页面未重新生成、缓存未更新;
- 替换内容为空乱码:数据库字符集统一为
utf8mb4_unicode_ci。
九、安全操作极简流程总结
数据库备份 → 复制对应 SQL 修改内容与域名 → 后台执行语句 → 全套数据更新 → 重新生成静态页 → 校验前台效果。
本文配套模板、静态源码可前往艾立兹素材库alisucai.com下载
发表评论
共有0条评论