If the one click updates don’t work, unfortunately Automatic Updater won’t work, either.
Have you had any luck getting it working? Tried checking your server setup against the Codex recommendations?
http://codex.wordpress.org/Updating_WordPress#Automatic_Update
Finally got back to this and I’m making a little progress.
WordPress now logs in to the FTP server, but for some reason it’s not finding the wp-contents folder.
Debug log when attempting update of a plugin is showing:
Sent: 230 User logged in
FEAT
Sent 106 bytes.
RNFR /opt/local/apache2/htdocs/DOMAINROOT/wp-content
‘What Is It?’ Check…
/opt/local/apache2/htdocs/DOMAINROOT/opt/local/apache2/htdocs/DOMAINROOT/wp-content
File Not Found: The Path Leads To Nothing
where the ftp account is pointed to DOMAINROOT.
So it appears that either the FTP server or WordPress is mashing an extra “/opt/local/apache2/htdocs/DOMAINROOT” onto the front of the path.
Can I mod a WP file so that this doesn’t occur? (and if so, which file and what mod?)
Thanks.
Replying to myself…
I figured out the problem there – My ftp server automatically puts the path to the website in, and then WP slaps the full path on the end of that.
Temporary solution is to FTP to the root – and only turn that account on when I need it, then turn it off immediately when done. Not the ideal solution (but OK for testing)… I’d rather that the FTP supply the non user-specific portion of the path, and WP take it from the *site* root onward, instead of the *server* root. Any hints on how to accomplish that would be appreciated.
I tried it on the test server (set to server root), and though it’s closer I still don’t have a winner. WP uploads the updated plugin to /wp-content/upgrade/, then is supposed to move it to /wp-content/plugins/ . I’m seeing “Bad sequence of commands” when that happens. The FTP debug log isn’t telling me any more than that.
Any idea where I would find the commands WP is sending? Could it be that it’s using relative addressing for that portion of the procedure, and since the directories it’s looking for aren’t at the root it gave the “bad command” error?
Below is a snip of debug log from the FTP server.
[22/Jun/2013:14:31:55 CDT] FTP-3 It’s A Directory
[22/Jun/2013:14:31:55 CDT] FTP-3 Alias Resolved (Cache) –
[22/Jun/2013:14:31:55 CDT] FTP-3 /opt/local/apache2/htdocs/DOMAINROOT/wp-content/upgrade/akismet.tmp
[22/Jun/2013:14:31:55 CDT] FTP-3 /opt/local/apache2/htdocs/DOMAINROOT/wp-content/upgrade/akismet.tmp
[22/Jun/2013:14:31:55 CDT] FTP-3 Sent: 350 Operation pending more information
[22/Jun/2013:14:31:55 CDT] FTP-3 Sent: 503 Bad sequence of commands
[22/Jun/2013:14:31:55 CDT] FTP-3 RNFR /opt/local/apache2/htdocs/DOMAINROOT/wp-content/plugins
[22/Jun/2013:14:31:55 CDT] FTP-3 ‘What Is It?’ Check…
[22/Jun/2013:14:31:55 CDT] FTP-3 /opt/local/apache2/htdocs/DOMAINROOT/wp-content/plugins
[22/Jun/2013:14:31:55 CDT] FTP-3 It’s A Directory
[22/Jun/2013:14:31:55 CDT] FTP-3 ‘What Is It?’ Check…
[22/Jun/2013:14:31:55 CDT] FTP-3 /opt/local/apache2/htdocs/DOMAINROOT/wp-content/plugins
[22/Jun/2013:14:31:55 CDT] FTP-3 Alias Resolved (Cache) –
[22/Jun/2013:14:31:55 CDT] FTP-3 /opt/local/apache2/htdocs/DOMAINROOT/wp-content/plugins
[22/Jun/2013:14:31:55 CDT] FTP-3 /opt/local/apache2/htdocs/DOMAINROOT/wp-content/plugins
[22/Jun/2013:14:31:55 CDT] FTP-3 It’s A Directory
[22/Jun/2013:14:31:55 CDT] FTP-3 Alias Resolved (Cache) –
[22/Jun/2013:14:31:55 CDT] FTP-3 /opt/local/apache2/htdocs/DOMAINROOT/wp-content/plugins
[22/Jun/2013:14:31:55 CDT] FTP-3 /opt/local/apache2/htdocs/DOMAINROOT/wp-content/plugins
[22/Jun/2013:14:31:55 CDT] FTP-3 Sent: 350 Operation pending more information
[22/Jun/2013:14:31:55 CDT] FTP-3 Sent: 503 Bad sequence of commands
[22/Jun/2013:14:31:55 CDT] FTP-3 QUIT
[22/Jun/2013:14:31:55 CDT] FTP-3 Sent 84 bytes.
[22/Jun/2013:14:31:55 CDT] FTP-3 Cleaning up user session
[22/Jun/2013:14:31:55 CDT] FTP-3 Ending FTP Session 3 on thread 2.
[22/Jun/2013:14:31:55 CDT] FTP-3 Network connection released. (16)
[22/Jun/2013:14:31:55 CDT] FTP-3 Connection handler finished. (2)
[22/Jun/2013:14:31:55 CDT] FTP-D-3 Data Thread Terminating (-29295)
A little tinkering with /wp-admin/includes/class-wp-upgrader.php and I’ve got it properly downloading the files to /wp-content/upgrade/. (for now, I just hard-coded the paths in lines 88 and 92)
Unfortunately, it’s not moving them to /wp-content/plugins/.
I’m getting the error “The package could not be installed. The plugin contains no files.”, which tells me that I’ve still got a path wrong because the source files and destination are both there.
I think it has to do with line ~190 in that file:
$source_files = array_keys( $wp_filesystem->dirlist($remote_source) );
I’m having a dog of a time trying to get that to output from the correct source. How would I do that without using $wp_filesystem-> ?