filter_block_kses()WP 5.3.1

Filters and sanitizes a parsed block to remove non-allowable HTML from block attribute values.

No Hooks.


Array. The filtered and sanitized block object result.


filter_block_kses( $block, $allowed_html, $allowed_protocols );
$block(WP_Block_Parser_Block) (required)
The parsed block object.
$allowed_html(array[]|string) (required)
An array of allowed HTML elements and attributes, or a context name such as 'post'. See wp_kses_allowed_html() for the list of accepted context names.
Array of allowed URL protocols.
Default: result of wp_allowed_protocols()


Since 5.3.1 Introduced.

filter_block_kses() code WP 6.4.3

function filter_block_kses( $block, $allowed_html, $allowed_protocols = array() ) {
	$block['attrs'] = filter_block_kses_value( $block['attrs'], $allowed_html, $allowed_protocols );

	if ( is_array( $block['innerBlocks'] ) ) {
		foreach ( $block['innerBlocks'] as $i => $inner_block ) {
			$block['innerBlocks'][ $i ] = filter_block_kses( $inner_block, $allowed_html, $allowed_protocols );

	return $block;