WordPress 网站迁移到正式环境不用修改数据库的方法

文 / @WordPress主题

本地WordPress网站迁移,如何解决图片链接问题

你好,我是一名WordPress开发者,今天想和大家分享一下在迁移本地WordPress网站至正式服务器时,如何解决图片链接问题。

上传图片时把绝对地址修改成相对地址

在之前的文章中,我曾介绍过WordPress绑定多个域名的方法,其中提到了通过修改WP_HOME和WP_SITEURL常量的方式来解决网站迁移后链接失效的问题。

但是,在将网站从本地迁移到服务器的过程中,图片资源链接依旧是指向本地的。因为在插入附件时,WordPress会将附件的URL写死到数据库中,导致我们需要手动修改数据库中的链接地址才能解决问题,非常麻烦。

不过,如果上传图片时不保存网站域名,而是直接保存相对于网站域名的相对链接地址,就可以轻松解决此问题。

以下代码是在WordPress官方论坛中发现的,它可以将上传的图片绝对链接修改为相对链接,从而解决写死域名在数据库中的问题。

function relativePathForUploads($fileInfos){
	global $blog_id;
	$path = get_blog_option($blog_id, 'siteurl');

	$fileInfos['url'] = str_replace($path, '', $fileInfos['url']);

	return $fileInfos;
}
add_filter('wp_handle_upload', 'relativePathForUploads');

需要注意的是,上述方法仅对新上传的图片有效,之前上传的图片链接地址仍是绝对网址。

对于以前上传的图片的解决办法

针对之前上传的图片链接问题,有两种解决办法:

  • 使用RelativeURL插件修改所有链接为相对链接
  • 使用七牛云存储插件,通过云存储访问之前的图片地址

以上就是本文的全部内容,如果你还有其它问题或疑惑,可以在留言中提问哦!

添加UTHEME为好友
扫码添加UTHEME微信为好友
· 分享WordPress相关技术文章,主题上新与优惠动态早知道。
· 微信端最大WordPress社群,限时免费入群。