Editor: limit layout rules on themes without theme.json.
Removes output of base rules for flow and constrained layout types on themes without theme.json. Props evanltd, poena, isabel_brison, andrewserong, oandregal. See #60981. Built from https://develop.svn.wordpress.org/trunk@58028 git-svn-id: http://core.svn.wordpress.org/trunk@57494 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
46356f0215
commit
9ecc777ded
|
@ -1227,7 +1227,7 @@ class WP_Theme_JSON {
|
||||||
);
|
);
|
||||||
|
|
||||||
foreach ( $base_styles_nodes as $base_style_node ) {
|
foreach ( $base_styles_nodes as $base_style_node ) {
|
||||||
$stylesheet .= $this->get_layout_styles( $base_style_node );
|
$stylesheet .= $this->get_layout_styles( $base_style_node, $types );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1389,11 +1389,13 @@ class WP_Theme_JSON {
|
||||||
* @since 6.1.0
|
* @since 6.1.0
|
||||||
* @since 6.3.0 Reduced specificity for layout margin rules.
|
* @since 6.3.0 Reduced specificity for layout margin rules.
|
||||||
* @since 6.5.1 Only output rules referencing content and wide sizes when values exist.
|
* @since 6.5.1 Only output rules referencing content and wide sizes when values exist.
|
||||||
|
* @since 6.5.3 Add types parameter to check if only base layout styles are needed.
|
||||||
*
|
*
|
||||||
* @param array $block_metadata Metadata about the block to get styles for.
|
* @param array $block_metadata Metadata about the block to get styles for.
|
||||||
|
* @param array $types Optional. Types of styles to output. If empty, all styles will be output.
|
||||||
* @return string Layout styles for the block.
|
* @return string Layout styles for the block.
|
||||||
*/
|
*/
|
||||||
protected function get_layout_styles( $block_metadata ) {
|
protected function get_layout_styles( $block_metadata, $types = array() ) {
|
||||||
$block_rules = '';
|
$block_rules = '';
|
||||||
$block_type = null;
|
$block_type = null;
|
||||||
|
|
||||||
|
@ -1543,6 +1545,11 @@ class WP_Theme_JSON {
|
||||||
foreach ( $base_style_rules as $base_style_rule ) {
|
foreach ( $base_style_rules as $base_style_rule ) {
|
||||||
$declarations = array();
|
$declarations = array();
|
||||||
|
|
||||||
|
// Skip outputting base styles for flow and constrained layout types if theme doesn't support theme.json. The 'base-layout-styles' type flags this.
|
||||||
|
if ( in_array( 'base-layout-styles', $types, true ) && ( 'default' === $layout_definition['name'] || 'constrained' === $layout_definition['name'] ) ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
if (
|
if (
|
||||||
isset( $base_style_rule['selector'] ) &&
|
isset( $base_style_rule['selector'] ) &&
|
||||||
preg_match( $layout_selector_pattern, $base_style_rule['selector'] ) &&
|
preg_match( $layout_selector_pattern, $base_style_rule['selector'] ) &&
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
*
|
*
|
||||||
* @global string $wp_version
|
* @global string $wp_version
|
||||||
*/
|
*/
|
||||||
$wp_version = '6.6-alpha-58027';
|
$wp_version = '6.6-alpha-58028';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
||||||
|
|
Loading…
Reference in New Issue