WP_Script_Modules::register()
Registers the script module if no script module with that script module identifier has already been registered.
Method of the class: WP_Script_Modules{}
No Hooks.
Return
null
. Nothing (null).
Usage
$WP_Script_Modules = new WP_Script_Modules(); $WP_Script_Modules->register( $id, $src, $deps, $version );
- $id(string) (required)
- The identifier of the script module. Should be unique. It will be used in the final import map.
- $src(string) (required)
- Full URL of the script module, or path of the script module relative to the WordPress root directory. If it is provided and the script module has not been registered yet, it will be registered.
- $deps(array)
List of dependencies.
Default: array()
-
...$0(string|array)
An array of script module identifiers of the dependencies of this script module. The dependencies can be strings or arrays. If they are arrays, they need an id key with the script module identifier, and can contain an import key with either static or dynamic. By default, dependencies that don't contain an import key are considered static.-
id(string)
The script module identifier. - import(string)
Optional. Import type. May be either static or dynamic.
Default: static
-
-
- $version(string|false|null)
- String specifying the script module version number. It is added to the URL as a query string for cache busting purposes. If $version is set to false, the version number is the currently installed WordPress version. If $version is set to null, no version is added.
Default: false
Changelog
Since 6.5.0 | Introduced. |
WP_Script_Modules::register() WP Script Modules::register code WP 6.7.1
public function register( string $id, string $src, array $deps = array(), $version = false ) { if ( ! isset( $this->registered[ $id ] ) ) { $dependencies = array(); foreach ( $deps as $dependency ) { if ( is_array( $dependency ) ) { if ( ! isset( $dependency['id'] ) ) { _doing_it_wrong( __METHOD__, __( 'Missing required id key in entry among dependencies array.' ), '6.5.0' ); continue; } $dependencies[] = array( 'id' => $dependency['id'], 'import' => isset( $dependency['import'] ) && 'dynamic' === $dependency['import'] ? 'dynamic' : 'static', ); } elseif ( is_string( $dependency ) ) { $dependencies[] = array( 'id' => $dependency, 'import' => 'static', ); } else { _doing_it_wrong( __METHOD__, __( 'Entries in dependencies array must be either strings or arrays with an id key.' ), '6.5.0' ); } } $this->registered[ $id ] = array( 'src' => $src, 'version' => $version, 'enqueue' => isset( $this->enqueued_before_registered[ $id ] ), 'dependencies' => $dependencies, ); } }