WordPress.org

Ready to get started?Download WordPress

Forums

Upgrade from 3.5.2 to 3.6: Unable to locate WordPress Root directory. (4 posts)

  1. Tatiane Pires
    Member
    Posted 11 months ago #

    I'm trying to upgrade WordPress version of a blog and it fails. I input FTP info (host, user, pass and type) then I get the message:

    Unable to locate WordPress Root directory.

    Installation Failed.

    This blog is running on Windows 2008 Enterprise host. I think the issue might be because the path on Windows server is different from Apache on Linux. I'm only developing the theme and managing this blog. If it was up to me, no doubt it would be hosted on a Linux server.

    The path is E:\home\<host_username>\Web.

    I can't install or upgrade plugins from WordPress admin either.

    Any ideas on how to fix it?

    Thanks!

  2. Tatiane Pires
    Member
    Posted 11 months ago #

    I've set WP_DEBUG to true on wp-config.php and tried to upgrade again.

    The following message repeated several times:

    PHP Notice: Undefined variable: b in E:\Home\<host_username>\Web\wordpress\wp-admin\includes\class-wp-filesystem-ftpext.php on line 334

    PHP Notice: Undefined variable: b in E:\Home\<host_username>\Web\wordpress\wp-admin\includes\class-wp-filesystem-ftpext.php on line 337

  3. Do a manual reinstall via FTP and see if that works.

    And of course disable plugins (rename the folder) to see if that fixes it if not.

  4. Tatiane Pires
    Member
    Posted 11 months ago #

    The blog in question only has Akismet 2.5.8 active. Jetpack 2.3.3 is there, but it's not active. It's a new blog, started from WP 3.5.2. So definitely plugins must not be the cause of the problem.

    And of course I know that a manual upgrade over FTP fixes it. But I want to solve the issue of not being able to upgrade WordPress and install/upgrade plugins from its own admin. My point is I want this WP tool working.

    Edit:

    I've checked the wp-admin\includes\file class-wp-filesystem-ftpext.php to see what might be wrong on lines 334 and 337. Below is the code from line 334 to 338:

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

    return &b;
    }

Reply

You must log in to post.

About this Topic