There are some 3rd party WordPress plugins that do not support automatic updates. So, if you have v1.0 of a plugin already installed and you try to install a new version (e.g. v1.1), you will end up getting the message:

Destination folder already exists. /home/.../.../...

This leaves two options, neither of which i’d like to use: Uninstall & re-install the plugin, or manually upload the new files via FTP.

In /wp-admin/includes/class-wp-upgrader.php line 428 I see this code:

public function install_package( $args = array() ) {
    global $wp_filesystem, $wp_theme_directories;

    $defaults = array(
        'source' => '', // Please always pass this
        'destination' => '', // and this
        'clear_destination' => false,
        'clear_working' => false,
        'abort_if_destination_exists' => true,
        'hook_extra' => array()

    $args = wp_parse_args($args, $defaults);


Is it possible to add a line to my theme’s functions.php file to re-declare ‘clear_destination’ as true, and thereby forcing WordPress to overwrite plugin files when I upload them?


Read more here: Is there a way to force WordPress to overwrite plugin files on installation?


If you know the solution of this issue, please leave us a reply in Comment section, to update the question.

Wordpress related questions and answers: