# set_ignored_hooked_blocks_metadata()

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

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

## Сигнатура

```php
set_ignored_hooked_blocks_metadata( array $parsed_anchor_block, string $relative_position, array $hooked_blocks, WP_Block_Template|WP_Post|array $context ): string
```

## Описание

Эта функция предназначена только для внутреннего использования.

## Параметры

- `$parsed_anchor_block` `array` — обязательный. Якорный блок в формате массива разобранного блока.
- `$relative_position` `string` — обязательный. Относительная позиция прикреплённых блоков.
  
  Может быть одним из 'before', 'after', 'first_child' или 'last_child'.
- `$hooked_blocks` `array` — обязательный. Массив типов прикреплённых блоков, сгруппированных по якорному блоку и относительной позиции.
- `$context` `WP_Block_Template|WP_Post|array` — обязательный. Шаблон блока, часть шаблона или паттерн, которому принадлежит якорный блок.

## Возвращаемое значение

`string`

## Исходный код

Файл: `wp-includes/blocks.php:1040`

```php
function set_ignored_hooked_blocks_metadata( &$parsed_anchor_block, $relative_position, $hooked_blocks, $context ) {
	$anchor_block_type  = $parsed_anchor_block['blockName'];
	$hooked_block_types = isset( $anchor_block_type, $hooked_blocks[ $anchor_block_type ][ $relative_position ] )
		? $hooked_blocks[ $anchor_block_type ][ $relative_position ]
		: array();

	/** This filter is documented in wp-includes/blocks.php */
	$hooked_block_types = apply_filters( 'hooked_block_types', $hooked_block_types, $relative_position, $anchor_block_type, $context );
	if ( empty( $hooked_block_types ) ) {
		return '';
	}

	foreach ( $hooked_block_types as $index => $hooked_block_type ) {
		$parsed_hooked_block = array(
			'blockName'    => $hooked_block_type,
			'attrs'        => array(),
			'innerBlocks'  => array(),
			'innerContent' => array(),
		);

		/** This filter is documented in wp-includes/blocks.php */
		$parsed_hooked_block = apply_filters( 'hooked_block', $parsed_hooked_block, $hooked_block_type, $relative_position, $parsed_anchor_block, $context );

		/** This filter is documented in wp-includes/blocks.php */
		$parsed_hooked_block = apply_filters( "hooked_block_{$hooked_block_type}", $parsed_hooked_block, $hooked_block_type, $relative_position, $parsed_anchor_block, $context );

		if ( null === $parsed_hooked_block ) {
			unset( $hooked_block_types[ $index ] );
		}
	}

	$previously_ignored_hooked_blocks = $parsed_anchor_block['attrs']['metadata']['ignoredHookedBlocks'] ?? array();

	$parsed_anchor_block['attrs']['metadata']['ignoredHookedBlocks'] = array_unique(
		array_merge(
			$previously_ignored_hooked_blocks,
			$hooked_block_types
		)
	);

	// Markup for the hooked blocks has already been created (in `insert_hooked_blocks`).
	return '';
}
```

## История изменений

- 6.5.0 — Introduced.

## Связанные

Использует: [`apply_filters`](https://chugunov.pro/api-wordpress/functions/apply_filters/).
Используется в: [`insert_hooked_blocks_and_set_ignored_hooked_blocks_metadata`](https://chugunov.pro/api-wordpress/functions/insert_hooked_blocks_and_set_ignored_hooked_blocks_metadata/).

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