批量替换WordPress文章中图片URL地址的方法

  • A+
所属分类:wordpress

什么情况需要更换WordPress文章的图片URL地址?

1、更换了网站域名

有许多网站建设初期都随便选择了一个网站域名,在更新文章的时候,上传图片很多时候都是自带网站域名,因此,一旦更换域名的时候,图片链接地址就会失效。

2、外链图床地址失效

有时候为了节省网站空间,或者更新文章的时候没有过多考虑,使用了统一的图床外链,比如使用了七牛云存储的二级域名。一旦图床外链失效,有可能是被防盗,有可能是更换了二级域名,那么图片的链接地址就会失效。

3、其他原因造成的图片地址失效

以上三种情况,如果要更换文章图片链接地址时,不进行批量式的修改,通过手工修改,除非文章才十篇八篇,那样就无所谓,否则将是很难更新图片地址。

两种可以批量式更新WordPress文章中的图片链接地址的方法:

方法一、更新数据库操作

通过MySQL的操作命令语句进行更新Update所有的文章中图片链接地址。

首先,备份好数据库。由于要对数据库操作,所以必须先备份好数据库。如何备份数据库,这里就不详说,可以网上搜索相关教程。

其次,可以通过PHPMyadmin面板操作。打开PHPMyadmin数据库管理软件,登陆后台选择对应的数据库wp_posts表,如下图:

批量替换WordPress文章中图片URL地址的方法

然后,点击“搜索”菜单,对应下图操作:

批量替换WordPress文章中图片URL地址的方法

在查找的地方填上你需要替换的域名,在替换为处填写替换后的域名,然后再点击下面的执行,进行替换。

需要注意的是,由于PHPMyadmin版本不同,操作界面也有所不同,如果没有上图所示,可以通过SQL进行更新操作。如下图:

批量替换WordPress文章中图片URL地址的方法

输入命令:UPDATE pb_posts SET post_content = REPLACE( post_content, '旧域名', '新域名' );

UPDATE语句说明:

UPDATE 表名 SET 字段 = REPLACE(字段,'待替换内容','替换值');

表明和字段名都不需要引号,只是在待替换内容和替换值上是需要引号的,因为他们是字符串类型的,这里要注意下。

这里需要注意的是,PHPMyadmin更新有可能并不完整,建议采用MySQL命令方式。即通过DOS或是LINUX命令窗口登陆数据库更新,更新语句即为UPDATE语句,这里就不详述。

方法二、通过替换文章文本方式操作

这一种方法最为简单,只需要将下面的代码加入Function.php文件中即可。

  1. function replace_text_wps($text){
  2. $replace = array(
  3. 'http://1mayi.com' => 'http://www.1mayi.com', 
  4.     );
  5.  $text = str_replace(array_keys($replace), $replace$text);
  6. return $text;
  7. }
  8. add_filter('the_content', 'replace_text_wps');
  9. add_filter('the_excerpt', 'replace_text_wps');

(以上代码同样适用于替换文章中的文本关键词)

个人建议:虽然可以用两种方法进行操作都可以,但是为了避免有遗漏,建议两种方式同时进行。如果文章内容比较少的情况下,选择其他一种方式就可以了。

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:4   其中:访客  3   博主  1

    • avatar 大城小我 2

      多谢分享,方法不错

      • avatar 西狂 1

        学习了,将来能用到

        • avatar hao 0

          能说明一下第二种方法的具体含义么?谢谢

            • avatar 单触角蚂蚁 Admin

              @hao ‘http://1mayi.com’ => ‘http://www.1mayi.com’,一个域名替换成另一个域名