функция
since 5.3.1
filter_block_kses_value()
Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.
Сигнатура
filter_block_kses_value( string[]|string $value, array[]|string $allowed_html, string[] $allowed_protocols = array(), array $block_context = null ): string[]|string
Описание
Фильтрует и очищает значение атрибута разобранного блока, удаляя недопустимый HTML.
Параметры
$value
string[]|string
обязательный
Фильтруемое значение атрибута.
$allowed_html
array[]|string
обязательный
Массив допустимых HTML-элементов и атрибутов либо имя контекста, например 'post'. Список допустимых имён контекстов см. в wp_kses_allowed_html().
$allowed_protocols
string[]
необязательный
= array()
Массив разрешённых URL-протоколов.
По умолчанию — результат работы wp_allowed_protocols().
$block_context
array
необязательный
= null
Блок, которому принадлежит атрибут, в формате массива разобранного блока.
Возвращаемое значение
string[]|string
Исходный код
wp-includes/blocks.php:2132
function filter_block_kses_value( $value, $allowed_html, $allowed_protocols = array(), $block_context = null ) {
if ( is_array( $value ) ) {
foreach ( $value as $key => $inner_value ) {
$filtered_key = filter_block_kses_value( $key, $allowed_html, $allowed_protocols, $block_context );
$filtered_value = filter_block_kses_value( $inner_value, $allowed_html, $allowed_protocols, $block_context );
if ( isset( $block_context['blockName'] ) && 'core/template-part' === $block_context['blockName'] ) {
$filtered_value = filter_block_core_template_part_attributes( $filtered_value, $filtered_key, $allowed_html );
}
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;
}
История изменений
| Версия | Описание |
|---|---|
| 6.5.5 | Added the $block_context parameter. |
| 5.3.1 | Introduced. |

