Theme_Upgrader::current_after( bool|WP_Error $response, array $theme ): bool|WP_Error

Turns off maintenance mode after upgrading the active theme.

Description

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

Parameters

$responsebool|WP_Errorrequired
The installation response after the installation has finished.
$themearrayrequired
Theme arguments.

Return

bool|WP_Error The original $response parameter or WP_Error.

Source

public function current_after( $response, $theme ) {
	if ( is_wp_error( $response ) ) {
		return $response;
	}

	$theme = isset( $theme['theme'] ) ? $theme['theme'] : '';

	// Only run if active theme.
	if ( get_stylesheet() !== $theme ) {
		return $response;
	}

	// Ensure stylesheet name hasn't changed after the upgrade:
	if ( get_stylesheet() === $theme && $theme !== $this->result['destination_name'] ) {
		wp_clean_themes_cache();
		$stylesheet = $this->result['destination_name'];
		switch_theme( $stylesheet );
	}

	// Time to remove maintenance mode. Bulk edit handles this separately.
	if ( ! $this->bulk ) {
		$this->maintenance_mode( false );
	}
	return $response;
}

Changelog

VersionDescription
2.8.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.