3

我正在更改我的网站托管,因此我对所有内容、主题、数据库进行了备份,并使用 WP 中的导出实用程序来导出所有帖子、页面等。

现在我正在尝试在新主机中导入帖子、页面、用户,但出现以下错误:

Failed to create new user for John Their posts will be attributed to the current user.
Failed to create new user for guest. Their posts will be attributed to the current user.
Failed to create new user for Sam. Their posts will be attributed to the current user.
Failed to import Media “MW profile”
Failed to import Media “LA house”
Failed to import Media “Gold”
Failed to import Media “Archive”
Failed to import Media “21882183”

...ETC

我检查了导入 xml 文件,其中的路径,但我没有看到任何问题,因为导入 XML 文件中的路径与图像真实路径完全相同。

那么有人可以告诉我我在这里可能做错了什么,以及如何解决这个问题?

4

3 回答 3

2

我遇到了这个问题,并意识到这是由于 URL 上的 WordPress 安全验证所致。它检查以确保远程主机与本地主机不同(出于某种原因)。

我有过去可以工作的代码,但最近失败了,所以我猜这是最近添加的。看起来有一个过滤器可以禁用它,它适用于我使用这个过滤器。

<?php 
add_filter( 'http_request_host_is_external', 'explicitly_allow_same_host_requests_for_import' );
function explicitly_allow_same_host_requests_for_import(){
    return true;
}
于 2014-03-03T05:15:56.050 回答
2

这是我要做的:

  • 将旧主机中的所有文件和文件夹复制到新主机。
  • 转储旧主机上的数据库,并将其导入新主机。

(在此步骤中,您将拥有原始 WP 安装的完整备份)。

  • 如有必要,调整wp-config.php文件上的数据库连接参数以反映您的新主机(某些主机强制使用 db 前缀名称,它可能与您原来的 db 名称不同)。

  • 您现在应该在各个方面都安装了相同的 WP。

于 2013-09-28T23:43:04.010 回答
0

我在消息“无法导入媒体......”时遇到了同样的问题,最后在文件夹“上传”权限中发现了问题。因此,请尝试更改权限,以便 Apache 用户能够写入“上传”文件夹(以及子文件夹,如果有的话)。如果您不确定谁是 Apache 用户,只需更改权限,以便“每个人”都可以读取/写入/执行,换句话说,将文件夹权限设置为“777”wp-content uploads

于 2013-10-04T20:26:01.720 回答