From d66ccc00611baf7e9609e02e36469c4dd1bb10ef Mon Sep 17 00:00:00 2001 From: Riad Benguella Date: Tue, 25 May 2021 13:41:30 +0000 Subject: [PATCH] Block Editor: Load theme resolver class in script loader. script-loader.php is sometimes called directly and in these situations, the Theme_JSON_Resolver class was not defined. Props nosolosw, noisysocks. Fixes #53175. git-svn-id: https://develop.svn.wordpress.org/trunk@51001 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-includes/script-loader.php | 11 +++++++++++ src/wp-settings.php | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/wp-includes/script-loader.php b/src/wp-includes/script-loader.php index f82f08d29e..8a77a441b3 100644 --- a/src/wp-includes/script-loader.php +++ b/src/wp-includes/script-loader.php @@ -34,6 +34,17 @@ require ABSPATH . WPINC . '/class.wp-styles.php'; /** WordPress Styles Functions */ require ABSPATH . WPINC . '/functions.wp-styles.php'; +/** + * get_stylsheet_directory is used by + * WP_Theme_JSON_Resolver::theme_has_support() + */ +if ( ! function_exists( 'get_stylesheet_directory' ) ) { + require_once ABSPATH . WPINC . '/theme.php'; +} +if ( ! class_exists( 'WP_Theme_JSON_Resolver' ) ) { + require_once ABSPATH . WPINC . '/class-wp-theme-json-resolver.php'; +} + /** * Registers TinyMCE scripts. * diff --git a/src/wp-settings.php b/src/wp-settings.php index 770fa9ff3d..47dad42e20 100644 --- a/src/wp-settings.php +++ b/src/wp-settings.php @@ -299,7 +299,7 @@ require ABSPATH . WPINC . '/class-wp-block-parser.php'; require ABSPATH . WPINC . '/blocks.php'; require ABSPATH . WPINC . '/blocks/index.php'; require ABSPATH . WPINC . '/class-wp-theme-json.php'; -require ABSPATH . WPINC . '/class-wp-theme-json-resolver.php'; +require_once ABSPATH . WPINC . '/class-wp-theme-json-resolver.php'; require ABSPATH . WPINC . '/block-editor.php'; require ABSPATH . WPINC . '/block-patterns.php'; require ABSPATH . WPINC . '/class-wp-block-supports.php';