Upgrade Issue (Passive Connection) using FTP for WordPress

This has been a recurring pain for my site (and all the sites hosted under my provider). I cannot seem to use the upgrade plugin, themes and wordpress function that has been introduced for quite a long time now. There has been plenty of updates given and fixes on this issue, but found them all inadequate for my particular problem.

The symptom is this:

Whenever I press the ‘upgrades’ for either WordPress, plugins or themes, I come to the FTP login page. I fill it up and press “Upgrade” only to find that it does nothing at all… it seems to be loading, but it will not refresh or change at all.

It happens no matter what ‘fix’ I employ.

Fix:

I found that I have to use Active FTP connection rather than Passive. What is the difference? I have no idea, for now (feel free to comment if you do know). What you need to do is make an amendment, very slight one as follows to this file: class-wp-filesystem-ftpext.php that is located in wordpress\wp-admin\includes

the original will have

@ftp_pasv( $this->link, true );

Change the “true” to “false” like below and re-upload the file to the appropriate directory on your ftp.

@ftp_pasv( $this->link, false );

Overwrite the previous file and try upgrading again.

Warning:

This works for me. Pretty easy, however, take note that if you do an Upgrade of WordPress, you will need to re-modify the new class-wp-filesystem-ftpext.php file again since the upgrade would replace the modified one. That is a minor annoyance.

All the best 🙂