wpseek.com
A WordPress-centric search engine for devs and theme authors



parse_blocks › WordPress Function

Since5.0.0
Deprecatedn/a
parse_blocks ( $content )
Parameters:
  • (string) $content Post content.
    Required: Yes
Returns:
  • (array[]) { Array of block structures. @type array ...$0 { An associative array of a single parsed block object. See WP_Block_Parser_Block. @type string|null $blockName Name of block. @type array $attrs Attributes from block comment delimiters. @type array[] $innerBlocks List of inner blocks. An array of arrays that have the same structure as this one. @type string $innerHTML HTML from inside block comment delimiters. @type array $innerContent List of string fragments and null markers where inner blocks were found. } }
Defined at:
Codex:

Parses blocks out of a content string.

Given an HTML document, this function fully-parses block content, producing a tree of blocks and their contents, as well as top-level non-block content, which will appear as a block with no blockName. This function can be memory heavy for certain documents, particularly those with deeply-nested blocks or blocks with extensive attribute values. Further, this function must parse an entire document in one atomic operation. If the entire parsed document is not necessary, consider using {@see} instead, as it provides a streaming and low-overhead interface for finding blocks.


Source

function parse_blocks( $content ) {
	/**
	 * Filter to allow plugins to replace the server-side block parser.
	 *
	 * @since 5.0.0
	 *
	 * @param string $parser_class Name of block parser class.
	 */
	$parser_class = apply_filters( 'block_parser_class', 'WP_Block_Parser' );

	$parser = new $parser_class();
	return $parser->parse( $content );
}