diff --git a/wp-admin/includes/update-core.php b/wp-admin/includes/update-core.php index e411b817dc..aa59a71592 100644 --- a/wp-admin/includes/update-core.php +++ b/wp-admin/includes/update-core.php @@ -1401,6 +1401,9 @@ function update_core( $from, $to ) { // Deactivate the Gutenberg plugin if its version is 10.7 or lower. _upgrade_580_force_deactivate_incompatible_plugins(); + // Deactivate the Gutenberg plugin if its version is 11.8 or lower. + _upgrade_590_force_deactivate_incompatible_plugins(); + // Upgrade DB with separate request. /** This filter is documented in wp-admin/includes/update-core.php */ apply_filters( 'update_feedback', __( 'Upgrading database…' ) ); @@ -1685,25 +1688,50 @@ function _upgrade_440_force_deactivate_incompatible_plugins() { } /** + * @access private * @ignore * @since 5.8.0 */ function _upgrade_580_force_deactivate_incompatible_plugins() { if ( defined( 'GUTENBERG_VERSION' ) && version_compare( GUTENBERG_VERSION, '10.7', '<=' ) ) { - $deactivated_gutenberg['gutenberg'] = array( - 'plugin_name' => 'Gutenberg', - 'version_deactivated' => GUTENBERG_VERSION, - 'version_compatible' => '10.8', - ); - if ( is_plugin_active_for_network( 'gutenberg/gutenberg.php' ) ) { - $deactivated_plugins = get_site_option( 'wp_force_deactivated_plugins', array() ); - $deactivated_plugins = array_merge( $deactivated_plugins, $deactivated_gutenberg ); - update_site_option( 'wp_force_deactivated_plugins', $deactivated_plugins ); - } else { - $deactivated_plugins = get_option( 'wp_force_deactivated_plugins', array() ); - $deactivated_plugins = array_merge( $deactivated_plugins, $deactivated_gutenberg ); - update_option( 'wp_force_deactivated_plugins', $deactivated_plugins ); - } - deactivate_plugins( array( 'gutenberg/gutenberg.php' ), true ); + _deactivate_gutenberg_when_incompatible_with_wp( '10.8' ); } } + +/** + * @access private + * @ignore + * @since 5.9.0 + */ +function _upgrade_590_force_deactivate_incompatible_plugins() { + if ( defined( 'GUTENBERG_VERSION' ) && version_compare( GUTENBERG_VERSION, '11.8', '<=' ) ) { + _deactivate_gutenberg_when_incompatible_with_wp( '11.9' ); + } +} + +/** + * Deactivates the Gutenberg plugin when its version is incompatible. + * + * @access private + * @ignore + * @since 5.9.0 + * + * @param string $compatible_version The version of Gutenberg plugin that is compatible. + */ +function _deactivate_gutenberg_when_incompatible_with_wp( $compatible_version ) { + $deactivated_gutenberg['gutenberg'] = array( + 'plugin_name' => 'Gutenberg', + 'version_deactivated' => GUTENBERG_VERSION, + 'version_compatible' => $compatible_version, + ); + if ( is_plugin_active_for_network( 'gutenberg/gutenberg.php' ) ) { + $deactivated_plugins = get_site_option( 'wp_force_deactivated_plugins', array() ); + $deactivated_plugins = array_merge( $deactivated_plugins, $deactivated_gutenberg ); + update_site_option( 'wp_force_deactivated_plugins', $deactivated_plugins ); + } else { + $deactivated_plugins = get_option( 'wp_force_deactivated_plugins', array() ); + $deactivated_plugins = array_merge( $deactivated_plugins, $deactivated_gutenberg ); + update_option( 'wp_force_deactivated_plugins', $deactivated_plugins ); + } + deactivate_plugins( array( 'gutenberg/gutenberg.php' ), true ); +} diff --git a/wp-includes/version.php b/wp-includes/version.php index eabe59c1b6..00795b0b88 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -16,7 +16,7 @@ * * @global string $wp_version */ -$wp_version = '5.9-alpha-52164'; +$wp_version = '5.9-alpha-52165'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.