利用数据库和代码,批量修改替换WordPress文章中的图片URL地址

有好多网站会遇到文章内图片不显示了,前段时间我也遇到过网站文章内图片不显示了,因为发的文章太多了,不进行批量修改,一个一个修改起来太麻烦了,找了各种方法测试,终于全部改过来了

现在将方法总结出来,有同样问题的朋友也可以试着修改看看,当然修改之前要备份好数据

先说一下什么情况下需要修改wordpress文章图片URL地址使图片显示

第一种是(后期更换了网站域名):

比如初建站就随便选了一个网站域名,后来换域名后图片就打不开了,那是因为在原网站更新文章的时候,上传的图片很多都是自带网站域名的,一旦更换域名,图片地址就会失效。

第二种是(外链图床地址失效):

好多站长为了节省网站空间,更新文章的时候图片就用了外部存储,使用了统一的图床外链,如果外链被防盗,或者更换了二级域名,那么图片链接地址就会失效,图片就打不开了

还有第三种情况,就是其他原因造成的图片失效,其他原因导致失效只能找到原因才能想办法解决。

那说一下前两种解决办法吧

有两种批量更改wordpress文章中图片链接地址的解决方法

ps:虽然两种方法都可以进行操作,不过有可能遗漏,为了避免遗漏,也可以两种方法同时进行修改

当然,如果文章比较少,可以选中其中一种方法就可以了。

第一种:通过数据库批量修改

1,登陆网站“PHPMyadmin(MySQL数据库管理程序)”,先备份好数据;

2,打开PHPMyadmin数据库面板,登陆后选择自己网站对应的数据库wp_posts表,找到“wp_posts”,点击一下,然后点击右侧“搜索”—“查找并替换”,如下图。

1620739488 759a59197ca7486.jpg利用数据库和代码,批量修改替换WordPress文章中的图片URL地址

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

1620739489 759a59197ca7486.jpg利用数据库和代码,批量修改替换WordPress文章中的图片URL地址

ps:由于PHPMyadmin版本不同,操作界面也可能有所不同,如果没有上图所示,可以通过SQL进行更新操作,还是找到“wp_posts”再点击“SQL”,输入如下代码,

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

1620739489 759a59197ca7486 1.jpg利用数据库和代码,批量修改替换WordPress文章中的图片URL地址

UPDATE语句说明:

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

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

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

第二种,通过代码来实现替换(此代码同样适用于替换文章中的文本关键词)

这种方法比较简单,只要将如下代码加入到“function.php”文件中即可;

有两种方式,一个是通过wordpress后台—外观—主题编辑器,找到这个php文件,也可以在文件管理中直接下载或通过ftp下载,修改后上传即可

ps:下面这段代码中需要修改的是如下图,把下图域名换成你自己的即可。

 

1620738966 53f8d4495e84c34.png利用数据库和代码,批量修改替换WordPress文章中的图片URL地址

复制的代码如下:

function replace_text_wps($text){
$replace = array(
'http://xiaoheigou.vip' => 'https://www.xiaoheigou.vip',
);
$text = str_replace(array_keys($replace), $replace, $text);
return $text;
}
add_filter('the_content', 'replace_text_wps');
add_filter('the_excerpt', 'replace_text_wps');

 

站内大部分资源收集于网络,若侵犯了您的合法权益,请联系我们删除!
个人学习记录 » 利用数据库和代码,批量修改替换WordPress文章中的图片URL地址