From d8996a3c77e0626e7604f661a4ea7ffabab557b4 Mon Sep 17 00:00:00 2001 From: Pascal Birchler Date: Wed, 31 Jan 2024 18:16:14 +0000 Subject: [PATCH] Script Loader: Use a global variable in `wp_script_modules()`. This brings the function more in line with its related `wp_scripts()` and `wp_styles()` functions and makes it easier to reset the class instance in tests. Props westonruter, luisherranz. See #56313. Built from https://develop.svn.wordpress.org/trunk@57503 git-svn-id: http://core.svn.wordpress.org/trunk@57004 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- wp-includes/script-modules.php | 13 ++++++++----- wp-includes/version.php | 2 +- wp-settings.php | 2 ++ 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/wp-includes/script-modules.php b/wp-includes/script-modules.php index 205494f699..2aff768bb3 100644 --- a/wp-includes/script-modules.php +++ b/wp-includes/script-modules.php @@ -14,17 +14,20 @@ * This function provides access to the WP_Script_Modules instance, creating one * if it doesn't exist yet. * + * @global WP_Script_Modules $wp_script_modules + * * @since 6.5.0 * * @return WP_Script_Modules The main WP_Script_Modules instance. */ function wp_script_modules(): WP_Script_Modules { - static $instance = null; - if ( is_null( $instance ) ) { - $instance = new WP_Script_Modules(); - $instance->add_hooks(); + global $wp_script_modules; + + if ( ! ( $wp_script_modules instanceof WP_Script_Modules ) ) { + $wp_script_modules = new WP_Script_Modules(); } - return $instance; + + return $wp_script_modules; } /** diff --git a/wp-includes/version.php b/wp-includes/version.php index b741509131..0fcf104a74 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -16,7 +16,7 @@ * * @global string $wp_version */ -$wp_version = '6.5-alpha-57502'; +$wp_version = '6.5-alpha-57503'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema. diff --git a/wp-settings.php b/wp-settings.php index 624b1d804a..87769333c5 100644 --- a/wp-settings.php +++ b/wp-settings.php @@ -378,6 +378,8 @@ require ABSPATH . WPINC . '/class-wp-script-modules.php'; require ABSPATH . WPINC . '/script-modules.php'; require ABSPATH . WPINC . '/interactivity-api.php'; +wp_script_modules()->add_hooks(); + $GLOBALS['wp_embed'] = new WP_Embed(); /**