wordpress / latest / classes / theme_upgrader / delete_old_theme.html

Theme_Upgrader::delete_old_theme( bool $removed, string $local_destination, string $remote_destination, array $theme ): bool

Delete the old theme during an upgrade.

Description

Hooked to the ‘upgrader_clear_destination’ filter by Theme_Upgrader::upgrade() and Theme_Upgrader::bulk_upgrade().

Parameters

$removed bool Required
$local_destination string Required
$remote_destination string Required
$theme array Required

Return

bool

Source

File: wp-admin/includes/class-theme-upgrader.php. View all references

public function delete_old_theme( $removed, $local_destination, $remote_destination, $theme ) {
	global $wp_filesystem;

	if ( is_wp_error( $removed ) ) {
		return $removed; // Pass errors through.
	}

	if ( ! isset( $theme['theme'] ) ) {
		return $removed;
	}

	$theme      = $theme['theme'];
	$themes_dir = trailingslashit( $wp_filesystem->wp_themes_dir( $theme ) );
	if ( $wp_filesystem->exists( $themes_dir . $theme ) ) {
		if ( ! $wp_filesystem->delete( $themes_dir . $theme, true ) ) {
			return false;
		}
	}

	return true;
}

Uses

Uses Description

Changelog

Version Description
2.8.0 Introduced.

© 2003–2022 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/classes/theme_upgrader/delete_old_theme