| @@ -38,9 +38,9 @@ | ||
| 38 | 38 | * |
| 39 | 39 | * @return array Block spacing CSS classes and inline styles. |
| 40 | 40 | */ |
| 41 | 41 | function gutenberg_apply_spacing_support( $block_type, $block_attributes ) { |
| 42 | - if ( wp_should_skip_block_supports_serialization( $block_type, 'spacing' ) ) { | |
| 42 | + if ( gutenberg_should_skip_block_supports_serialization( $block_type, 'spacing' ) ) { | |
| 43 | 43 | return array(); |
| 44 | 44 | } |
| 45 | 45 | |
| 46 | 46 | $attributes = array(); |
| @@ -45,27 +45,20 @@ | ||
| 45 | 45 | |
| 46 | 46 | $attributes = array(); |
| 47 | 47 | $has_padding_support = block_has_support( $block_type, array( 'spacing', 'padding' ), false ); |
| 48 | 48 | $has_margin_support = block_has_support( $block_type, array( 'spacing', 'margin' ), false ); |
| 49 | - $block_styles = $block_attributes['style'] ?? null; | |
| 49 | + $block_styles = isset( $block_attributes['style'] ) ? $block_attributes['style'] : null; | |
| 50 | 50 | |
| 51 | 51 | if ( ! $block_styles ) { |
| 52 | 52 | return $attributes; |
| 53 | 53 | } |
| 54 | 54 | |
| 55 | - $skip_padding = wp_should_skip_block_supports_serialization( $block_type, 'spacing', 'padding' ); | |
| 56 | - $skip_margin = wp_should_skip_block_supports_serialization( $block_type, 'spacing', 'margin' ); | |
| 57 | - $spacing_block_styles = array( | |
| 58 | - 'padding' => null, | |
| 59 | - 'margin' => null, | |
| 60 | - ); | |
| 61 | - if ( $has_padding_support && ! $skip_padding ) { | |
| 62 | - $spacing_block_styles['padding'] = $block_styles['spacing']['padding'] ?? null; | |
| 63 | - } | |
| 64 | - if ( $has_margin_support && ! $skip_margin ) { | |
| 65 | - $spacing_block_styles['margin'] = $block_styles['spacing']['margin'] ?? null; | |
| 66 | - } | |
| 67 | - $styles = gutenberg_style_engine_get_styles( array( 'spacing' => $spacing_block_styles ) ); | |
| 55 | + $skip_padding = gutenberg_should_skip_block_supports_serialization( $block_type, 'spacing', 'padding' ); | |
| 56 | + $skip_margin = gutenberg_should_skip_block_supports_serialization( $block_type, 'spacing', 'margin' ); | |
| 57 | + $spacing_block_styles = array(); | |
| 58 | + $spacing_block_styles['padding'] = $has_padding_support && ! $skip_padding ? _wp_array_get( $block_styles, array( 'spacing', 'padding' ), null ) : null; | |
| 59 | + $spacing_block_styles['margin'] = $has_margin_support && ! $skip_margin ? _wp_array_get( $block_styles, array( 'spacing', 'margin' ), null ) : null; | |
| 60 | + $styles = gutenberg_style_engine_get_styles( array( 'spacing' => $spacing_block_styles ) ); | |
| 68 | 61 | |
| 69 | 62 | if ( ! empty( $styles['css'] ) ) { |
| 70 | 63 | $attributes['style'] = $styles['css']; |
| 71 | 64 | } |