Global styles: preload `/global-styles` endpoint responses

This commit fixes a regression whereby requests to global styles endpoints were not being preloaded, resulting in several requests being fired clientside unnecessarily.  

For performance reasons, we  preload the requests so that the data is in the editor store and ready to use straight away.  

The outcome is that the editor loads more quickly.

Follow-up to [62042].

Reviewed by peterwilsoncc.
Merges [59316] to the 6.7 branch.

Props ellatrix, ramonopoly, apermo, peterwilsoncc.
Fixes #62315.


Built from https://develop.svn.wordpress.org/branches/6.7@59324


git-svn-id: http://core.svn.wordpress.org/branches/6.7@58710 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Peter Wilson 2024-10-29 22:55:17 +00:00
parent d91fbfad55
commit c9462062a6
3 changed files with 9 additions and 4 deletions

View File

@ -51,6 +51,8 @@ wp_enqueue_script( 'wp-edit-post' );
$rest_path = rest_get_route_for_post( $post ); $rest_path = rest_get_route_for_post( $post );
$active_theme = get_stylesheet();
// Preload common data. // Preload common data.
$preload_paths = array( $preload_paths = array(
'/wp/v2/types?context=view', '/wp/v2/types?context=view',
@ -65,8 +67,10 @@ $preload_paths = array(
sprintf( '%s/autosaves?context=edit', $rest_path ), sprintf( '%s/autosaves?context=edit', $rest_path ),
'/wp/v2/settings', '/wp/v2/settings',
array( '/wp/v2/settings', 'OPTIONS' ), array( '/wp/v2/settings', 'OPTIONS' ),
'/wp/v2/global-styles/themes/' . get_stylesheet(), '/wp/v2/global-styles/themes/' . $active_theme . '?context=view',
'/wp/v2/global-styles/themes/' . $active_theme . '/variations?context=view',
'/wp/v2/themes?context=edit&status=active', '/wp/v2/themes?context=edit&status=active',
array( '/wp/v2/global-styles/' . WP_Theme_JSON_Resolver::get_user_global_styles_post_id(), 'OPTIONS' ),
'/wp/v2/global-styles/' . WP_Theme_JSON_Resolver::get_user_global_styles_post_id() . '?context=edit', '/wp/v2/global-styles/' . WP_Theme_JSON_Resolver::get_user_global_styles_post_id() . '?context=edit',
); );

View File

@ -97,8 +97,9 @@ $preload_paths = array(
'/wp/v2/template-parts?context=edit&per_page=-1', '/wp/v2/template-parts?context=edit&per_page=-1',
'/wp/v2/themes?context=edit&status=active', '/wp/v2/themes?context=edit&status=active',
'/wp/v2/global-styles/' . $active_global_styles_id . '?context=edit', '/wp/v2/global-styles/' . $active_global_styles_id . '?context=edit',
'/wp/v2/global-styles/' . $active_global_styles_id, array( '/wp/v2/global-styles/' . $active_global_styles_id, 'OPTIONS' ),
'/wp/v2/global-styles/themes/' . $active_theme, '/wp/v2/global-styles/themes/' . $active_theme . '?context=view',
'/wp/v2/global-styles/themes/' . $active_theme . '/variations?context=view',
array( $navigation_rest_route, 'OPTIONS' ), array( $navigation_rest_route, 'OPTIONS' ),
array( array(
add_query_arg( add_query_arg(

View File

@ -16,7 +16,7 @@
* *
* @global string $wp_version * @global string $wp_version
*/ */
$wp_version = '6.7-RC2-59323'; $wp_version = '6.7-RC2-59324';
/** /**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema. * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.