generate_block_asset_handle()
Generates the name for an asset based on the name of the block and the field name provided.
No Hooks.
Returns
String. Generated asset name for the block's field.
Usage
generate_block_asset_handle( $block_name, $field_name, $index );
- $block_name(string) (required)
- Name of the block.
- $field_name(string) (required)
- Name of the metadata field.
- $index(int)
- Index of the asset when multiple items passed.
Changelog
| Since 5.5.0 | Introduced. |
| Since 6.1.0 | Added $index parameter. |
| Since 6.5.0 | Added support for viewScriptModule field. |
generate_block_asset_handle() generate block asset handle code WP 6.8.3
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;
}