如何快速为WordPress网站更换新域名?

  • 酉灿
  • WordPress
  • Jul 27, 2021

首先,我们需要在服务器或者虚拟主机绑定和解析新的网站域名,删除旧域名的绑定。

其次用PHPmyadmin数据库管理系统打开WordPress数据库,找到【wp_options】数据表,修改表中的两个数据即【siteurl】和【home】里的URL为新的域名;

这一步更改完成之后基本上就完成了一大半了,但是接下来的更改更为重要,如果只通过上面方法的更改可能会导致网站上面的一些图片无法打开,如果再一篇篇文章的修改必定耗费大量的时间,比较麻烦,所以需要对数据库执行下面的SQL语句,实现批量替换Wordpress网站文章里的所有旧域名为新域名

通过PHPmyadmin数据库管理系统点击数据库的SQL,将以下的SQL语句进行执行。;

UPDATE wp_posts SET post_content = replace( post_content, '老域名地址','新域名地址') ;
UPDATE wp_posts SET guid = replace( guid, '老域名地址','新域名地址')

这样就完成了Wordpress网站更换域名了,就可以使用新域名访问网站了。但是通过前台的查看发现还是有部分图片显示不出来,说明这种方法还是遗漏了一些内容,所以就对数据库进行排查,发现原来是优推网创建的一些自定义字段里面的图片没显示出来,那么就需要通过数据库执行SQL语句来改变自定义字段里面的老域名,所以又继续执行下面的SQL语句,最终完美解决图片不显示问题

UPDATE wp_postmeta SET meta_value = replace(meta_value, '老域名地址','新域名地址')

到这里已经完美的把老域名替换为新域名了,客户也非常满意,本来还打算让他一篇篇文章修改,最终只是简单的执行了一个SQL语句就搞定了,只花费了一分钟。

方法二

这一种方法最为简单,只需要将下面的代码加入function.php文件中即可,文件放入后需要把所有文章都更新一下才行,直接批量操作更新下文章即可。

function replace_text_wps($text){
    $replace = array(
        'http://xuxiaoke.com' => 'https://www.seouv.com',
    );
    $text = str_replace(array_keys($replace), $replace, $text);
    return $text;
}
add_filter('the_content', 'replace_text_wps');
add_filter('the_excerpt', 'replace_text_wps');
只需要把代码中的域名换成你的域名即可,后面的域名是新域名,前面的是被替换的域名,以上代码同样适用于替换文章中的文本关键词)
打赏