# generate_block_asset_handle()

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

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

## Сигнатура

```php
generate_block_asset_handle( string $block_name, string $field_name, int $index ): string
```

## Описание

Генерирует имя ресурса на основе имени блока и указанного имени поля.

## Параметры

- `$block_name` `string` — обязательный. Имя блока.
- `$field_name` `string` — обязательный. Имя поля метаданных.
- `$index` `int` — необязательный. Индекс ресурса, когда передано несколько элементов.
  
  Значение по умолчанию 0.

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

`string`

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

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

```php
function generate_block_asset_handle( $block_name, $field_name, $index = 0 ) {
	if ( str_starts_with( $block_name, 'core/' ) ) {
		$asset_handle = str_replace( 'core/', 'wp-block-', $block_name );
		if ( str_starts_with( $field_name, 'editor' ) ) {
			$asset_handle .= '-editor';
		}
		if ( str_starts_with( $field_name, 'view' ) ) {
			$asset_handle .= '-view';
		}
		if ( str_ends_with( strtolower( $field_name ), 'scriptmodule' ) ) {
			$asset_handle .= '-script-module';
		}
		if ( $index > 0 ) {
			$asset_handle .= '-' . ( $index + 1 );
		}
		return $asset_handle;
	}

	$field_mappings = array(
		'editorScript'     => 'editor-script',
		'editorStyle'      => 'editor-style',
		'script'           => 'script',
		'style'            => 'style',
		'viewScript'       => 'view-script',
		'viewScriptModule' => 'view-script-module',
		'viewStyle'        => 'view-style',
	);
	$asset_handle   = str_replace( '/', '-', $block_name ) .
		'-' . $field_mappings[ $field_name ];
	if ( $index > 0 ) {
		$asset_handle .= '-' . ( $index + 1 );
	}
	return $asset_handle;
}
```

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

- 6.5.0 — Added support for viewScriptModule field.
- 6.1.0 — Added $index parameter.
- 5.5.0 — Introduced.

## Связанные

Используется в: [`register_block_script_module_id`](https://chugunov.pro/api-wordpress/functions/register_block_script_module_id/), [`register_block_script_handle`](https://chugunov.pro/api-wordpress/functions/register_block_script_handle/), [`register_block_style_handle`](https://chugunov.pro/api-wordpress/functions/register_block_style_handle/), [`enqueue_block_styles_assets`](https://chugunov.pro/api-wordpress/functions/enqueue_block_styles_assets/).

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