--- a/wp/wp-includes/deprecated.php Fri Sep 05 18:40:08 2025 +0200
+++ b/wp/wp-includes/deprecated.php Fri Sep 05 18:52:52 2025 +0200
@@ -705,7 +705,7 @@
$show_option_none = '';
if ( $optionnone )
- $show_option_none = _x( 'None', 'Categories dropdown (show_option_none parameter)' );
+ $show_option_none = _x( 'None', 'Categories dropdown (show_option_none parameter)' );
$vars = compact('show_option_all', 'show_option_none', 'orderby', 'order',
'show_last_update', 'show_count', 'hide_empty', 'selected', 'exclude');
@@ -3673,6 +3673,7 @@
function wp_get_http( $url, $file_path = false, $red = 1 ) {
_deprecated_function( __FUNCTION__, '4.4.0', 'WP_Http' );
+ // Add 60 seconds to the script timeout to ensure the remote request has enough time.
if ( function_exists( 'set_time_limit' ) ) {
@set_time_limit( 60 );
}
@@ -5189,7 +5190,7 @@
* Returns the duotone filter SVG string for the preset.
*
* @since 5.9.1
- * @deprecated 6.3.0
+ * @deprecated 6.3.0 Use WP_Duotone::get_filter_svg_from_preset() instead.
*
* @access private
*
@@ -5197,7 +5198,7 @@
* @return string Duotone SVG filter.
*/
function wp_get_duotone_filter_svg( $preset ) {
- _deprecated_function( __FUNCTION__, '6.3.0' );
+ _deprecated_function( __FUNCTION__, '6.3.0', 'WP_Duotone::get_filter_svg_from_preset()' );
return WP_Duotone::get_filter_svg_from_preset( $preset );
}
@@ -6002,7 +6003,7 @@
*/
$support_errors = apply_filters( 'pre_wp_update_https_detection_errors', null );
if ( is_wp_error( $support_errors ) ) {
- update_option( 'https_detection_errors', $support_errors->errors );
+ update_option( 'https_detection_errors', $support_errors->errors, false );
return;
}
@@ -6168,7 +6169,6 @@
<style id="skip-link-styles">
.skip-link.screen-reader-text {
border: 0;
- clip: rect(1px,1px,1px,1px);
clip-path: inset(50%);
height: 1px;
margin: -1px;
@@ -6181,7 +6181,6 @@
.skip-link.screen-reader-text:focus {
background-color: #eee;
- clip: auto !important;
clip-path: none;
color: #444;
display: block;
@@ -6310,3 +6309,155 @@
_deprecated_function( __FUNCTION__, '6.6.0' );
return $parsed_block;
}
+
+/**
+ * Gets the global styles custom CSS from theme.json.
+ *
+ * @since 6.2.0
+ * @deprecated 6.7.0 Use {@see 'wp_get_global_stylesheet'} instead for top-level custom CSS, or {@see 'WP_Theme_JSON::get_styles_for_block'} for block-level custom CSS.
+ *
+ * @return string The global styles custom CSS.
+ */
+function wp_get_global_styles_custom_css() {
+ _deprecated_function( __FUNCTION__, '6.7.0', 'wp_get_global_stylesheet' );
+ if ( ! wp_theme_has_theme_json() ) {
+ return '';
+ }
+ /*
+ * Ignore cache when the development mode is set to 'theme', so it doesn't interfere with the theme
+ * developer's workflow.
+ */
+ $can_use_cached = ! wp_is_development_mode( 'theme' );
+
+ /*
+ * By using the 'theme_json' group, this data is marked to be non-persistent across requests.
+ * @see `wp_cache_add_non_persistent_groups()`.
+ *
+ * The rationale for this is to make sure derived data from theme.json
+ * is always fresh from the potential modifications done via hooks
+ * that can use dynamic data (modify the stylesheet depending on some option,
+ * settings depending on user permissions, etc.).
+ * See some of the existing hooks to modify theme.json behavior:
+ * @see https://make.wordpress.org/core/2022/10/10/filters-for-theme-json-data/
+ *
+ * A different alternative considered was to invalidate the cache upon certain
+ * events such as options add/update/delete, user meta, etc.
+ * It was judged not enough, hence this approach.
+ * @see https://github.com/WordPress/gutenberg/pull/45372
+ */
+ $cache_key = 'wp_get_global_styles_custom_css';
+ $cache_group = 'theme_json';
+ if ( $can_use_cached ) {
+ $cached = wp_cache_get( $cache_key, $cache_group );
+ if ( $cached ) {
+ return $cached;
+ }
+ }
+
+ $tree = WP_Theme_JSON_Resolver::get_merged_data();
+ $stylesheet = $tree->get_custom_css();
+
+ if ( $can_use_cached ) {
+ wp_cache_set( $cache_key, $stylesheet, $cache_group );
+ }
+
+ return $stylesheet;
+}
+
+/**
+ * Enqueues the global styles custom css defined via theme.json.
+ *
+ * @since 6.2.0
+ * @deprecated 6.7.0 Use {@see 'wp_enqueue_global_styles'} instead.
+ */
+function wp_enqueue_global_styles_custom_css() {
+ _deprecated_function( __FUNCTION__, '6.7.0', 'wp_enqueue_global_styles' );
+ if ( ! wp_is_block_theme() ) {
+ return;
+ }
+
+ // Don't enqueue Customizer's custom CSS separately.
+ remove_action( 'wp_head', 'wp_custom_css_cb', 101 );
+
+ $custom_css = wp_get_custom_css();
+ $custom_css .= wp_get_global_styles_custom_css();
+
+ if ( ! empty( $custom_css ) ) {
+ wp_add_inline_style( 'global-styles', $custom_css );
+ }
+}
+
+/**
+ * Generate block style variation instance name.
+ *
+ * @since 6.6.0
+ * @deprecated 6.7.0 Use `wp_unique_id( $variation . '--' )` instead.
+ *
+ * @access private
+ *
+ * @param array $block Block object.
+ * @param string $variation Slug for the block style variation.
+ *
+ * @return string The unique variation name.
+ */
+function wp_create_block_style_variation_instance_name( $block, $variation ) {
+ _deprecated_function( __FUNCTION__, '6.7.0', 'wp_unique_id' );
+ return $variation . '--' . md5( serialize( $block ) );
+}
+
+/**
+ * Returns whether the current user has the specified capability for a given site.
+ *
+ * @since 3.0.0
+ * @since 5.3.0 Formalized the existing and already documented `...$args` parameter
+ * by adding it to the function signature.
+ * @since 5.8.0 Wraps current_user_can() after switching to blog.
+ * @deprecated 6.7.0 Use current_user_can_for_site() instead.
+ *
+ * @param int $blog_id Site ID.
+ * @param string $capability Capability name.
+ * @param mixed ...$args Optional further parameters, typically starting with an object ID.
+ * @return bool Whether the user has the given capability.
+ */
+function current_user_can_for_blog( $blog_id, $capability, ...$args ) {
+ return current_user_can_for_site( $blog_id, $capability, ...$args );
+}
+
+/**
+ * Loads classic theme styles on classic themes in the editor.
+ *
+ * This is used for backwards compatibility for Button and File blocks specifically.
+ *
+ * @since 6.1.0
+ * @since 6.2.0 Added File block styles.
+ * @deprecated 6.8.0 Styles are enqueued, not printed in the body element.
+ *
+ * @param array $editor_settings The array of editor settings.
+ * @return array A filtered array of editor settings.
+ */
+function wp_add_editor_classic_theme_styles( $editor_settings ) {
+ _deprecated_function( __FUNCTION__, '6.8.0', 'wp_enqueue_classic_theme_styles' );
+
+ if ( wp_theme_has_theme_json() ) {
+ return $editor_settings;
+ }
+
+ $suffix = wp_scripts_get_suffix();
+ $classic_theme_styles = ABSPATH . WPINC . "/css/classic-themes$suffix.css";
+
+ /*
+ * This follows the pattern of get_block_editor_theme_styles,
+ * but we can't use get_block_editor_theme_styles directly as it
+ * only handles external files or theme files.
+ */
+ $classic_theme_styles_settings = array(
+ 'css' => file_get_contents( $classic_theme_styles ),
+ '__unstableType' => 'core',
+ 'isGlobalStyles' => false,
+ );
+
+ // Add these settings to the start of the array so that themes can override them.
+ array_unshift( $editor_settings['styles'], $classic_theme_styles_settings );
+
+ return $editor_settings;
+}
\ No newline at end of file