From 44e89612d0e205e5ce2a5cf9b301115a414943dc Mon Sep 17 00:00:00 2001 From: Sergey Biryukov Date: Fri, 23 Jun 2023 15:43:31 +0000 Subject: [PATCH] Script Loader: Replace `str_contains()` usage in `wp-includes/script-loader.php`. This avoids fatal errors on PHP < 8.0 if the file is included via `wp-admin/load-scripts.php` or `wp-admin/load-styles.php`, in which case the polyfills from `wp-includes/compat.php` are not loaded. Follow-up to [55703], [55710], [55988]. Props ryelle. See #58206. git-svn-id: https://develop.svn.wordpress.org/trunk@56002 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-includes/script-loader.php | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/wp-includes/script-loader.php b/src/wp-includes/script-loader.php index fa0c2856a1..0c8cd50e85 100644 --- a/src/wp-includes/script-loader.php +++ b/src/wp-includes/script-loader.php @@ -651,7 +651,12 @@ function wp_scripts_get_suffix( $type = '' ) { // Include an unmodified $wp_version. require ABSPATH . WPINC . '/version.php'; - $develop_src = str_contains( $wp_version, '-src' ); + /* + * Note: str_contains() is not used here, as this file can be included + * via wp-admin/load-scripts.php or wp-admin/load-styles.php, in which case + * the polyfills from wp-includes/compat.php are not loaded. + */ + $develop_src = false !== strpos( $wp_version, '-src' ); if ( ! defined( 'SCRIPT_DEBUG' ) ) { define( 'SCRIPT_DEBUG', $develop_src ); @@ -1480,7 +1485,12 @@ function wp_default_styles( $styles ) { require ABSPATH . WPINC . '/version.php'; if ( ! defined( 'SCRIPT_DEBUG' ) ) { - define( 'SCRIPT_DEBUG', str_contains( $wp_version, '-src' ) ); + /* + * Note: str_contains() is not used here, as this file can be included + * via wp-admin/load-scripts.php or wp-admin/load-styles.php, in which case + * the polyfills from wp-includes/compat.php are not loaded. + */ + define( 'SCRIPT_DEBUG', false !== strpos( $wp_version, '-src' ) ); } $guessurl = site_url();