Theme_Upgrader::delete_old_theme
Deletes the old theme during an upgrade.
Hooked to the upgrader_clear_destination filter by Theme_Upgrader::upgrade() and Theme_Upgrader::bulk_upgrade().
Method of the class: Theme_Upgrader{}
No Hooks.
Returns
true|false.
Usage
$Theme_Upgrader = new Theme_Upgrader(); $Theme_Upgrader->delete_old_theme( $removed, $local_destination, $remote_destination, $theme );
- $removed(true|false) (required)
- .
- $local_destination(string) (required)
- .
- $remote_destination(string) (required)
- .
- $theme(array) (required)
- .
Notes
- Global. WP_Filesystem_Base. $wp_filesystem Subclass
Changelog
| Since 2.8.0 | Introduced. |
Theme_Upgrader::delete_old_theme() Theme Upgrader::delete old theme code WP 6.8.3
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;
}