# filter_block_kses_value()

URL: https://chugunov.pro/api-wordpress/functions/filter_block_kses_value/
Проверено на WordPress 6.9, обновлено 06.08.2026.
Источник: независимый русскоязычный справочник chugunov.pro. Не является официальной документацией WordPress.

Тип: функция.
Появился в версии: 5.3.1.

## Сигнатура

```php
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`

```php
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.

## Связанные

Использует: [`filter_block_core_template_part_attributes`](https://chugunov.pro/api-wordpress/functions/filter_block_core_template_part_attributes/), [`filter_block_kses_value`](https://chugunov.pro/api-wordpress/functions/filter_block_kses_value/), [`wp_kses`](https://chugunov.pro/api-wordpress/functions/wp_kses/).
Используется в: [`filter_block_kses`](https://chugunov.pro/api-wordpress/functions/filter_block_kses/), [`filter_block_kses_value`](https://chugunov.pro/api-wordpress/functions/filter_block_kses_value/).

Оригинал в официальной документации: https://developer.wordpress.org/reference/functions/filter_block_kses_value/
