WordPress at Your Fingertips
function is not described

WP_Block_Parser::add_inner_block() public WP 5.0.0

Given a block structure from memory pushes a new block to the output list.

{} It's a method of the class: WP_Block_Parser{}

No Hooks.


null. Nothing.


$WP_Block_Parser = new WP_Block_Parser();
$WP_Block_Parser->add_inner_block( $block, $token_start, $token_length, $last_offset );
$block(WP_Block_Parser_Block) (required)
The block to add to the output.
$token_start(int) (required)
Byte offset into the document where the first token for the block starts.
$token_length(int) (required)
Byte length of entire block from start of opening token to end of closing token.
Last byte offset into document if continuing form earlier output.


Since 5.0.0 Introduced.

Code of WP_Block_Parser::add_inner_block() WP 5.7.2

function add_inner_block( WP_Block_Parser_Block $block, $token_start, $token_length, $last_offset = null ) {
	$parent                       = $this->stack[ count( $this->stack ) - 1 ];
	$parent->block->innerBlocks[] = (array) $block;
	$html                         = substr( $this->document, $parent->prev_offset, $token_start - $parent->prev_offset );

	if ( ! empty( $html ) ) {
		$parent->block->innerHTML     .= $html;
		$parent->block->innerContent[] = $html;

	$parent->block->innerContent[] = null;
	$parent->prev_offset           = $last_offset ? $last_offset : $token_start + $token_length;