Themes: Improve Gutenberg check before activating an FSE theme.

Account for sites enabling Gutenberg as an mu-plugin when determining whether full-site-editing themes can be enabled. This replaces the check the plugin is active with a check whether the function `gutenberg_is_fse_theme()` is defined.

Follow up to [51193].

Props noisysocks, peterwilsoncc, SergeyBiryukov.
See #53410.



git-svn-id: https://develop.svn.wordpress.org/trunk@51197 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Peter Wilson 2021-06-22 05:55:52 +00:00
parent d920d56923
commit 098ab594fe
2 changed files with 2 additions and 2 deletions

View File

@ -189,7 +189,7 @@ do_action( 'customize_controls_head' );
// Check if the theme requires the FSE to work correctly.
$theme_tags = $wp_customize->theme()->get( 'Tags' );
if ( ! empty( $theme_tags ) && in_array( 'full-site-editing', $theme_tags, true ) && ! is_plugin_active( 'gutenberg/gutenberg.php' ) ) {
if ( ! empty( $theme_tags ) && in_array( 'full-site-editing', $theme_tags, true ) && ! function_exists( 'gutenberg_is_fse_theme' ) ) {
$fse_safe = false;
}
?>

View File

@ -911,7 +911,7 @@ function validate_theme_requirements( $stylesheet ) {
// If the theme is a Full Site Editing theme, check for the presence of the Gutenberg plugin.
$theme_tags = $theme->get( 'Tags' );
if ( ! empty( $theme_tags ) && in_array( 'full-site-editing', $theme_tags, true ) && ! is_plugin_active( 'gutenberg/gutenberg.php' ) ) {
if ( ! empty( $theme_tags ) && in_array( 'full-site-editing', $theme_tags, true ) && ! function_exists( 'gutenberg_is_fse_theme' ) ) {
return new WP_Error(
'theme_requires_fse',
sprintf(