Typecho博客批量替换文章内链接与图片链接

今天在浏览一个网站的时候,发现一篇挺有意思的文章,就是Typecho博客批量替换文章内链接与图片链接,本来这篇文章并没有太多的技术含量,就是一个利用MySQL的批量替换功能,来实现文章内的链接或者图片的链接,但是有些时候也会使用到typecho博客程序构造网站,纯粹的一个记录吧。

我们先来看文章中包含的图片链接,如OSS原域名:

1
blog-196.cos.ap-guangzhou.myqcloud.com

新网站的图片链接地址

1
image.blogbig.cn

这样一来的话,就是把旧网址

1
blog-196.cos.ap-guangzhou.myqcloud.com

批量替换成为新网站,也就是

1
image.blogbig.cn

这个时候,我们需要进入空间的后台管理,然后找到数据库管理

需要使用数据库的管理工具phpmyadmin来修改数据库的内容,在数据库账户内,找到对应的数据库文件后,进入typecho_contents表,也就是Typecho的文章内容表,双击打开之后,找到里面SQL选项,然后输入代码

1
UPDATE `typecho_contents` SET `text` = REPLACE(`text`,'blog-196.cos.ap-guangzhou.myqcloud.com','image.blogbig.cn');

其中这段代码的含义,就是批量替换数据库中的链接地址,格式代码如下

1
UPDATE `typecho_contents` SET `text` = REPLACE(`text`,'旧网址','新网址');

然后

我们还需要批量替换typecho_fields表,也就是Typecho的文章字段表,

1
UPDATE `typecho_fields` SET `str_value` = REPLACE(`str_value`,'blog-196.cos.ap-guangzhou.myqcloud.com','image.blogbig.cn');

这段代码的含义,同样是批量替换数据库中的链接地址,格式代码如下

1
UPDATE `typecho_fields` SET `str_value` = REPLACE(`str_value`,'旧网址','新网址');

当然了,上面的代码,也可以批量替换其他的一些字段内容,例如当网址配置SSL后需要更改链接,旧网址为

1
http://yourname.com

批量修改为新网址,例如

1
https://yourname.com

只需要大家注意替换的数据库表和字段就可以。