generate_block_asset_handle()WP 5.5.0

Generates the name for an asset based on the name of the block and the field name provided.

Хуков нет.

Возвращает

Строку. Generated asset name for the block's field.

Использование

generate_block_asset_handle( $block_name, $field_name, $index );
$block_name(строка) (обязательный)
Name of the block.
$field_name(строка) (обязательный)
Name of the metadata field.
$index(int)
Index of the asset when multiple items passed.

Список изменений

С версии 5.5.0 Введена.
С версии 6.1.0 Added $index parameter.
С версии 6.5.0 Added support for viewScriptModule field.

Код generate_block_asset_handle() WP 6.5.2

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;
}