我以前迁移过许多 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
上继续运行而没有子目录,但我确定我必须让它正常工作以防止 future 的错误。
我也更新到最新版本的 Wordpress,不确定这是否会导致任何问题。
最佳答案
我认为这个问题涉及放置在内容项中的媒体和链接。 我过去常常做一些手动 SQL 查询来解决这个问题,但现在我运行这个插件 https://wordpress.org/plugins/automatic-domain-changer/ 该插件将遍历所有内容并进行必要的更改。
关于php - 将 Wordpress 迁移到具有子目录的站点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31731686/