parse_blocks( string $content )
Parses blocks out of a content string.
Parameters
- $content
-
(string) (Required) Post content.
Return
(array[]) Array of parsed block objects.
Source
File: wp-includes/blocks.php
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 ); }
Expand full source code Collapse full source code View on Trac View on GitHub
Changelog
Version | Description |
---|---|
5.0.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.
Example using
parse_blocks()
to display a block from a postExpand full source codeCollapse full source code
Place within The Loop
If used in The Loop it renders the first YouTube video embedded within a post. Can be used with other blocks by assigning their blockName.
Top ↑
Feedback
This embed example is now defunct as of WordPress 5.6 changing to the block name to core/embed and adding variations. I’ll submit a new sample. — By Joseph Dickson —
Example of returned array for a Paragraph block:
Expand full source codeCollapse full source code
Use serialize_blocks() to convert the parsed block back to content.
In case you wish to check if current post content is Gutenberg-blocks or using Classic editor:
If post content is Classic Editor, it has only one block, but
blockName
is empty.As of Gutenberg 7.7, for this input:
the output of
parse_blocks
will be:Expand full source codeCollapse full source code