serialize_block()WP 5.3.1

Returns the content of a block, including comment delimiters, serializing all attributes from the given parsed block.

This should be used when preparing a block to be saved to post content. Prefer render_block preparing a block for display. Unlike render_block, this does not evaluate a block's render_callback, and will instead preserve the markup as parsed.

Хуков нет.

Возвращает

Строку. String of rendered HTML.

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

serialize_block( $block );
$block(массив) (обязательный)

A representative array of a single parsed block object. See WP_Block_Parser_Block.

  • blockName(строка)
    Name of block.

  • attrs(массив)
    Attributes from block comment delimiters.

  • innerBlocks(array[])
    List of inner blocks. An array of arrays that have the same structure as this one.

  • innerHTML(строка)
    HTML from inside block comment delimiters.

  • innerContent(массив)
    List of string fragments and null markers where inner blocks were found.

Список изменений

С версии 5.3.1 Введена.

Код serialize_block() WP 6.6

function serialize_block( $block ) {
	$block_content = '';

	$index = 0;
	foreach ( $block['innerContent'] as $chunk ) {
		$block_content .= is_string( $chunk ) ? $chunk : serialize_block( $block['innerBlocks'][ $index++ ] );
	}

	if ( ! is_array( $block['attrs'] ) ) {
		$block['attrs'] = array();
	}

	return get_comment_delimited_block_content(
		$block['blockName'],
		$block['attrs'],
		$block_content
	);
}