Automattic\WooCommerce\EmailEditor\Engine\Renderer\ContentRenderer\Preprocessors

Spacing_Preprocessor::add_block_gapsprivateWC 1.0

Adds margin-top to blocks that are not first or last in the columns block.

Метод класса: Spacing_Preprocessor{}

Хуков нет.

Возвращает

Массив.

Использование

// private - только в коде основоного (родительского) класса
$result = $this->add_block_gaps( $parsed_blocks, $gap, $parent_block ): array;
$parsed_blocks(массив) (обязательный)
Parsed blocks.
$gap(строка)
Gap.
По умолчанию: ''
$parent_block(массив|null)
Parent block.
По умолчанию: null

Код Spacing_Preprocessor::add_block_gaps() WC 10.0.2

private function add_block_gaps( array $parsed_blocks, string $gap = '', $parent_block = null ): array {
	foreach ( $parsed_blocks as $key => $block ) {
		$parent_block_name = $parent_block['blockName'] ?? '';
		// Ensure that email_attrs are set.
		$block['email_attrs'] = $block['email_attrs'] ?? array();

		/**
		 * Do not add a gap to:
		 * - first child
		 * - parent block is a buttons block (where buttons are side by side).
		 */
		if ( 0 !== $key && $gap && 'core/buttons' !== $parent_block_name ) {
			$block['email_attrs']['margin-top'] = $gap;
		}

		$block['innerBlocks']  = $this->add_block_gaps( $block['innerBlocks'] ?? array(), $gap, $block );
		$parsed_blocks[ $key ] = $block;
	}

	return $parsed_blocks;
}