wp_default_packages_scripts( WP_Scripts $scripts )
Registers all the WordPress packages scripts that are in the standardized js/dist/
location.
Description
For the order of $scripts->add
see wp_default_scripts
.
Parameters
- $scripts
-
(WP_Scripts) (Required) WP_Scripts object.
Source
File: wp-includes/script-loader.php
function wp_default_packages_scripts( $scripts ) { $suffix = wp_scripts_get_suffix(); // Expects multidimensional array like: // 'a11y.js' => array('dependencies' => array(...), 'version' => '...'), // 'annotations.js' => array('dependencies' => array(...), 'version' => '...'), // 'api-fetch.js' => array(... $assets = include ABSPATH . WPINC . '/assets/script-loader-packages.php'; foreach ( $assets as $package_name => $package_data ) { $basename = basename( $package_name, '.js' ); $handle = 'wp-' . $basename; $path = "/wp-includes/js/dist/{$basename}{$suffix}.js"; if ( ! empty( $package_data['dependencies'] ) ) { $dependencies = $package_data['dependencies']; } else { $dependencies = array(); } // Add dependencies that cannot be detected and generated by build tools. switch ( $handle ) { case 'wp-block-library': array_push( $dependencies, 'editor' ); break; case 'wp-edit-post': array_push( $dependencies, 'media-models', 'media-views', 'postbox', 'wp-dom-ready' ); break; } $scripts->add( $handle, $path, $dependencies, $package_data['version'], 1 ); if ( in_array( 'wp-i18n', $dependencies, true ) ) { $scripts->set_translations( $handle ); } /* * Manually set the text direction localization after wp-i18n is printed. * This ensures that wp.i18n.isRTL() returns true in RTL languages. * We cannot use $scripts->set_translations( 'wp-i18n' ) to do this * because WordPress prints a script's translations *before* the script, * which means, in the case of wp-i18n, that wp.i18n.setLocaleData() * is called before wp.i18n is defined. */ if ( 'wp-i18n' === $handle ) { $ltr = _x( 'ltr', 'text direction' ); $script = sprintf( "wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ '%s' ] } );", $ltr ); $scripts->add_inline_script( $handle, $script, 'after' ); } } }
Changelog
Version | Description |
---|---|
5.0.0 | Introduced. |
© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/wp_default_packages_scripts