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



apply_block_hooks_to_content › WordPress Function

Since6.6.0
Deprecatedn/a
apply_block_hooks_to_content ( $content, $context, $callback = 'insert_hooked_blocks' )
Access:
  • private
Parameters: (3)
  • (string) $content Serialized content.
    Required: Yes
  • (WP_Block_Template|WP_Post|array) $context A block template, template part, `wp_navigation` post object, or pattern that the blocks belong to.
    Required: Yes
  • (callable) $callback A function that will be called for each block to generate the markup for a given list of blocks that are hooked to it. Default: 'insert_hooked_blocks'.
    Required: No
    Default: 'insert_hooked_blocks'
Returns:
  • (string) The serialized markup.
Defined at:
Codex:

Runs the hooked blocks algorithm on the given content.



Source

function apply_block_hooks_to_content( $content, $context, $callback = 'insert_hooked_blocks' ) {
	$hooked_blocks = get_hooked_blocks();
	if ( empty( $hooked_blocks ) && ! has_filter( 'hooked_block_types' ) ) {
		return $content;
	}

	$blocks = parse_blocks( $content );

	$before_block_visitor = make_before_block_visitor( $hooked_blocks, $context, $callback );
	$after_block_visitor  = make_after_block_visitor( $hooked_blocks, $context, $callback );

	return traverse_and_serialize_blocks( $blocks, $before_block_visitor, $after_block_visitor );
}