将Wordpress迁移到具有子目录

时间:2015-07-30 18:44:09

标签: php database wordpress .htaccess

我以前迁移了很多Wordpress网站,但现在我遇到了一个我似乎无法解决的问题。一些但不是所有的链接都没有正确加载。

我正在从local.dev迁移到example.com/test。

在我的数据库选项中,我将两个选项都设置为example.com/test。 我加倍检查了WP后端的选项,它们是example.com/test。 我已经更新了我的永久链接。

所有页面都可以使用,所有链接都可以使用,但是对图像等的一些引用却没有 - 他们正在加载example.com/而不是example.com/test。

我认为它可能与.htaccess文件有关,因为我无法从FTP端更新它。如果我删除它并更新永久链接,则不会创建.htaccess文件。我无法访问任何服务器端覆盖,只能访问文件。

在我的MAMP虚拟主机中,我将SymLinks Override设置为All,但我无法在直播主机上编辑类似的内容。

不起作用的链接沿着$image = get_post_meta(37 ,'_my_meta',TRUE)['img'];返回

http://www.example.com/test/wp-content/uploads/image.jpg

但是返回

http://www.example.com/wp-content/uploads/image.jpg

使用bloginfo('wpurl');返回http://www.example.com/test,所有类似的返回正确(site_url();'template_directory'等。

最后,该网站将继续http://www.example.com没有子目录,但我确信我必须让它正常工作以防止将来出现错误。

我也在某个时候更新到最新版本的Wordpress,不确定是否会导致任何问题。

2 个答案:

答案 0 :(得分:1)

  

不起作用的链接沿着$image => get_post_meta(37 ,'_my_meta',TRUE)['img'];返回

     

http://www.example.com/test/wp-content/uploads/image.jpg

此元信息存储在DB中。然后,要进行迁移,您必须先更改数据库中的所有旧URL,然后再将其导入新位置

答案 1 :(得分:1)

我认为该问题涉及内容项中的媒体和链接。 我用来做一些手动SQL查询来解决这个问题,但现在我运行这个插件https://wordpress.org/plugins/automatic-domain-changer/ 该插件将遍历所有内容并进行必要的更改。