Summery Summery

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

Syntax Syntax

filter_block_kses_value( string[]|string $value, array[]|string $allowed_html, string[] $allowed_protocols = array() )

Parameters Parameters


(string[]|string) (Required) The attribute value to filter.


(array[]|string) (Required) An array of allowed HTML elements and attributes, or a context name such as 'post'.


(string[]) (Optional) Array of allowed URL protocols.

Default value: array()

Return Return

(string[]|string) The filtered and sanitized result.

Source Source

File: wp-includes/blocks.php

function filter_block_kses_value( $value, $allowed_html, $allowed_protocols = array() ) {
	if ( is_array( $value ) ) {
		foreach ( $value as $key => $inner_value ) {
			$filtered_key   = filter_block_kses_value( $key, $allowed_html, $allowed_protocols );
			$filtered_value = filter_block_kses_value( $inner_value, $allowed_html, $allowed_protocols );

			if ( $filtered_key !== $key ) {
				unset( $value[ $key ] );

			$value[ $filtered_key ] = $filtered_value;
	} elseif ( is_string( $value ) ) {
		return wp_kses( $value, $allowed_html, $allowed_protocols );

	return $value;


Changelog Changelog

Version Description
5.3.1 Introduced.


Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.