diff --git a/wp-admin/edit-form-advanced.php b/wp-admin/edit-form-advanced.php index 4ac0548996..b7f6fad9ab 100644 --- a/wp-admin/edit-form-advanced.php +++ b/wp-admin/edit-form-advanced.php @@ -18,6 +18,10 @@ if ( ! defined( 'ABSPATH' ) ) { */ global $post_type, $post_type_object, $post; +// Flag that we're not loading the block editor. +$current_screen = get_current_screen(); +$current_screen->is_block_editor( false ); + if ( is_multisite() ) { add_action( 'admin_footer', '_admin_notice_post_locked' ); } else { diff --git a/wp-admin/includes/class-wp-screen.php b/wp-admin/includes/class-wp-screen.php index 21094b880a..36cb90017f 100644 --- a/wp-admin/includes/class-wp-screen.php +++ b/wp-admin/includes/class-wp-screen.php @@ -202,9 +202,10 @@ final class WP_Screen { return $hook_name; } - $post_type = $taxonomy = null; - $in_admin = false; - $action = ''; + $post_type = $taxonomy = null; + $in_admin = false; + $action = ''; + $is_block_editor = false; if ( $hook_name ) { $id = $hook_name; @@ -294,6 +295,13 @@ final class WP_Screen { $post = get_post( $post_id ); if ( $post ) { $post_type = $post->post_type; + + /** This filter is documented in wp-admin/post.php */ + $replace_editor = apply_filters( 'replace_editor', false, $post ); + + if ( ! $replace_editor ) { + $is_block_editor = use_block_editor_for_post( $post ); + } } } break; @@ -314,6 +322,12 @@ final class WP_Screen { if ( null === $post_type ) { $post_type = 'post'; } + + // When creating a new post, use the default block editor support value for the post type. + if ( empty( $post_id ) ) { + $is_block_editor = use_block_editor_for_post_type( $post_type ); + } + $id = $post_type; break; case 'edit': @@ -357,13 +371,14 @@ final class WP_Screen { $screen->id = $id; } - $screen->base = $base; - $screen->action = $action; - $screen->post_type = (string) $post_type; - $screen->taxonomy = (string) $taxonomy; - $screen->is_user = ( 'user' == $in_admin ); - $screen->is_network = ( 'network' == $in_admin ); - $screen->in_admin = $in_admin; + $screen->base = $base; + $screen->action = $action; + $screen->post_type = (string) $post_type; + $screen->taxonomy = (string) $taxonomy; + $screen->is_user = ( 'user' == $in_admin ); + $screen->is_network = ( 'network' == $in_admin ); + $screen->in_admin = $in_admin; + $screen->is_block_editor = $is_block_editor; self::$_registry[ $id ] = $screen; diff --git a/wp-admin/post-new.php b/wp-admin/post-new.php index 153cba2dc4..afc0c3bce6 100644 --- a/wp-admin/post-new.php +++ b/wp-admin/post-new.php @@ -74,6 +74,10 @@ if ( apply_filters( 'replace_editor', false, $post ) !== true ) { wp_enqueue_script( 'autosave' ); include( ABSPATH . 'wp-admin/edit-form-advanced.php' ); } +} else { + // Flag that we're not loading the block editor. + $current_screen = get_current_screen(); + $current_screen->is_block_editor( false ); } include( ABSPATH . 'wp-admin/admin-footer.php' ); diff --git a/wp-includes/version.php b/wp-includes/version.php index 56345eb12d..259f278a0f 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -13,7 +13,7 @@ * * @global string $wp_version */ -$wp_version = '5.2-beta3-45223'; +$wp_version = '5.2-beta3-45224'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.