Editor: Preserve block style variations when securing theme.

Adds the ability to process block style variations to the `remove_insecure_properties` function of theme json class.

Props dsas, ramonopoly.
Fixes #59108.

Built from https://develop.svn.wordpress.org/trunk@56502


git-svn-id: http://core.svn.wordpress.org/trunk@56014 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
isabel_brison 2023-09-01 02:53:19 +00:00
parent f9f0b6246b
commit 5db3477859
2 changed files with 16 additions and 1 deletions

View File

@ -2821,6 +2821,7 @@ class WP_Theme_JSON {
* Removes insecure data from theme.json.
*
* @since 5.9.0
* @since 6.3.1 Preserves global styles block variations when securing styles.
*
* @param array $theme_json Structure to sanitize.
* @return array Sanitized structure.
@ -2879,6 +2880,20 @@ class WP_Theme_JSON {
if ( ! empty( $output ) ) {
_wp_array_set( $sanitized, $metadata['path'], $output );
}
if ( isset( $metadata['variations'] ) ) {
foreach ( $metadata['variations'] as $variation ) {
$variation_input = _wp_array_get( $theme_json, $variation['path'], array() );
if ( empty( $variation_input ) ) {
continue;
}
$variation_output = static::remove_insecure_styles( $variation_input );
if ( ! empty( $variation_output ) ) {
_wp_array_set( $sanitized, $variation['path'], $variation_output );
}
}
}
}
$setting_nodes = static::get_setting_nodes( $theme_json );

View File

@ -16,7 +16,7 @@
*
* @global string $wp_version
*/
$wp_version = '6.4-alpha-56501';
$wp_version = '6.4-alpha-56502';
/**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.