diff --git a/wp-admin/edit-form-blocks.php b/wp-admin/edit-form-blocks.php index 0f4ccee94b..617432d957 100644 --- a/wp-admin/edit-form-blocks.php +++ b/wp-admin/edit-form-blocks.php @@ -202,6 +202,29 @@ if ( $editor_styles && current_theme_supports( 'editor-styles' ) ) { } } +// Image sizes. +$image_sizes = get_intermediate_image_sizes(); +$image_sizes[] = 'full'; + +/** This filter is documented in wp-admin/includes/media.php */ +$image_size_names = apply_filters( + 'image_size_names_choose', + array( + 'thumbnail' => __( 'Thumbnail' ), + 'medium' => __( 'Medium' ), + 'large' => __( 'Large' ), + 'full' => __( 'Full Size' ), + ) +); + +$available_image_sizes = array(); +foreach ( $image_sizes as $image_size_slug ) { + $available_image_sizes[] = array( + 'slug' => $image_size_slug, + 'name' => isset( $image_size_names[ $image_size_slug ] ) ? $image_size_names[ $image_size_slug ] : $image_size_slug, + ); +} + // Lock settings. $user_id = wp_check_post_lock( $post->ID ); if ( $user_id ) { @@ -257,12 +280,17 @@ $editor_settings = array( 'maxUploadFileSize' => $max_upload_size, 'allowedMimeTypes' => get_allowed_mime_types(), 'styles' => $styles, + 'availableImageSizes' => $available_image_sizes, 'postLock' => $lock_details, 'postLockUtils' => array( 'nonce' => wp_create_nonce( 'lock-post_' . $post->ID ), 'unlockNonce' => wp_create_nonce( 'update-post_' . $post->ID ), 'ajaxUrl' => admin_url( 'admin-ajax.php' ), ), + + // Whether or not to load the 'postcustom' meta box is stored as a user meta + // field so that we're not always loading its assets. + 'enableCustomFields' => (bool) get_user_meta( get_current_user_id(), 'enable_custom_fields', true ), ); $autosave = wp_get_post_autosave( $post_ID ); diff --git a/wp-admin/includes/meta-boxes.php b/wp-admin/includes/meta-boxes.php index 0f175892d6..3ae21af404 100644 --- a/wp-admin/includes/meta-boxes.php +++ b/wp-admin/includes/meta-boxes.php @@ -1463,11 +1463,21 @@ function register_and_do_post_meta_boxes( $post ) { } if ( post_type_supports( $post_type, 'custom-fields' ) ) { - $args = array( - '__back_compat_meta_box' => ! (bool) get_user_meta( get_current_user_id(), 'enable_custom_fields', true ), - '__block_editor_compatible_meta_box' => true, - ); - add_meta_box( 'postcustom', __( 'Custom Fields' ), 'post_custom_meta_box', null, 'normal', 'core', $args ); + $screen = get_current_screen(); + if ( ! $screen || ! $screen->is_block_editor() || (bool) get_user_meta( get_current_user_id(), 'enable_custom_fields', true ) ) { + add_meta_box( + 'postcustom', + __( 'Custom Fields' ), + 'post_custom_meta_box', + null, + 'normal', + 'core', + array( + '__back_compat_meta_box' => false, + '__block_editor_compatible_meta_box' => true, + ) + ); + } } /** diff --git a/wp-admin/includes/post.php b/wp-admin/includes/post.php index 7b07e1dc3f..dfe85ac1cd 100644 --- a/wp-admin/includes/post.php +++ b/wp-admin/includes/post.php @@ -2112,7 +2112,7 @@ function get_block_categories( $post ) { array( 'slug' => 'common', 'title' => __( 'Common Blocks' ), - 'icon' => 'screenoptions', + 'icon' => null, ), array( 'slug' => 'formatting', @@ -2214,6 +2214,10 @@ function the_block_editor_meta_boxes() {
+
+ + +