Make WordPress Core


Ignore:
Timestamp:
11/10/2025 06:41:03 AM (4 months ago)
Author:
wildworks
Message:

Editor: Fix handling of default presets at block level in theme.json

Fix an issue where block-level presets do not work correctly when default presets are disabled and the slug matches a default preset.

Props aaronrobertshaw, bph, ramonopoly, wildworks.
Fixes #64195.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/class-wp-theme-json.php

    r61046 r61190  
    32513251                $prevent_override = $preset_metadata['prevent_override'];
    32523252                if ( is_array( $prevent_override ) ) {
    3253                     $prevent_override = _wp_array_get( $this->theme_json['settings'], $preset_metadata['prevent_override'] );
     3253                    $global_path  = array_merge( array( 'settings' ), $prevent_override );
     3254                    $global_value = _wp_array_get( $this->theme_json, $global_path, null );
     3255
     3256                    $node_level_path  = array_merge( $node['path'], $prevent_override );
     3257                    $prevent_override = _wp_array_get( $this->theme_json, $node_level_path, $global_value );
    32543258                }
    32553259
Note: See TracChangeset for help on using the changeset viewer.