找不到WordPress根目录

时间:2013-08-05 作者:tpires

我正在尝试升级WordPress版本的博客,但失败了。我输入FTP信息(主机、用户、密码和类型),然后得到消息:

找不到WordPress根目录。

安装失败。

此博客正在Windows 2008 Enterprise host上运行。(如果由我决定,毫无疑问,它将托管在Linux服务器上。)我的第一个想法是,这是因为E:\\home\\<host_username>\\Web

我也不能从WordPress管理员那里安装或升级插件。发生这种情况是因为它托管在Windows服务器上吗?

我已经在WP config上将WP\\u DEBUG设置为true。php并尝试再次升级。以下消息重复多次:

PHP注意:未定义的变量:b在E:\\Home \\<;host\\u用户名>;\\Web\\wordpress\\wp admin\\includes\\class wp filesystem ftpext。php在线334

PHP注意:未定义的变量:b在E:\\Home \\<;host\\u用户名>;\\Web\\wordpress\\wp admin\\includes\\class wp filesystem ftpext。php在线337

我已经检查了wp admin \\ includes \\ file类wp filesystem ftpext。php查看第334行和第337行中可能出现的错误。下面是从第334行到第337行的代码:

if ( $b[\'islink\'] )
  $b[\'name\'] = preg_replace( \'/(\\s*->\\s*.*)$/\', \'\', $b[\'name\'] );

return &b;
该博客只有Akismet 2.5.8处于活动状态。Jetpack 2.3.3已存在,但未激活。这是一个新的博客,从WP 3.5.2开始。因此,插件肯定不是问题的原因。

当然,我知道我可以通过FTP升级WordPress上传新版本的文件。我的观点是,我想解决无法升级WordPress和从其自身管理员安装/升级插件的问题。

有没有关于如何修复它的想法?

3 个回复
SO网友:igloude

我相信还有其他方法可以修复它,但您可以尝试重新安装。当然,请确保备份数据库和主题文件,然后将它们放到新安装中。

这不是最有说服力的解决方案,但在过去我想不出其他方法时,它对我很有效。

SO网友:Toni Michel Caubet

你试过了吗this 作用

function fs_get_wp_config_path()
{
    $base = dirname(__FILE__);
    $path = false;

    if (@file_exists(dirname(dirname($base))."/wp-config.php"))
    {
        $path = dirname(dirname($base))."/wp-config.php";
    }
    else
    if (@file_exists(dirname(dirname(dirname($base)))."/wp-config.php"))
    {
        $path = dirname(dirname(dirname($base)))."/wp-config.php";
    }
    else
    $path = false;

    if ($path != false)
    {
        $path = str_replace("\\\\", "/", $path);
    }
    return $path;
}
然后,您可以获得如下所示的wp根路径:

<?php echo fs_get_wp_config_path(); ?>

SO网友:Omer Zak

如果您的网站在PHP 7上运行,请安装SSH SFTP Updater Support 可能会解决你的问题。这个插件解决了PHP 7的一个bug。

结束