Summery Summery
Loads the script translated strings.
Syntax Syntax
Parameters Parameters
- $handle
- 
					(Required) Name of the script to register a translation domain to. 
- $domain
- 
					(Optional) Text domain. Default 'default'. Default value: 'default' 
- $path
- 
					(Optional) The full file path to the directory containing translation files. Default value: null 
Return Return
(string|false) False if the script textdomain could not be loaded, the translated strings in JSON encoding otherwise.
Source Source
File: wp-includes/l10n.php
 * The .mo files must be named based on the locale exactly.
 *
 * @since 1.5.0
 * @since 4.6.0 The function now tries to load the .mo file from the languages directory first.
 *
 * @param string $domain Text domain. Unique identifier for retrieving translated strings.
 * @param string $path   Optional. Path to the directory containing the .mo file.
 *                       Default false.
 * @return bool True when textdomain is successfully loaded, false otherwise.
 */
function load_theme_textdomain( $domain, $path = false ) {
	/**
	 * Filters a theme's locale.
	 *
	 * @since 3.0.0
	 *
	 * @param string $locale The theme's current locale.
	 * @param string $domain Text domain. Unique identifier for retrieving translated strings.
	 */
	$locale = apply_filters( 'theme_locale', determine_locale(), $domain );
	$mofile = $domain . '-' . $locale . '.mo';
	// Try to load from the languages directory first.
	if ( load_textdomain( $domain, WP_LANG_DIR . '/themes/' . $mofile ) ) {
		return true;
	}
	if ( ! $path ) {
		$path = get_template_directory();
	}
	return load_textdomain( $domain, $path . '/' . $locale . '.mo' );
}
/**
 * Load the child themes translated strings.
 *
 * If the current locale exists as a .mo file in the child themes
 * root directory, it will be included in the translated strings by the $domain.
 *
 * The .mo files must be named based on the locale exactly.
 *
 * @since 2.9.0
 *
 * @param string $domain Text domain. Unique identifier for retrieving translated strings.
 * @param string $path   Optional. Path to the directory containing the .mo file.
 *                       Default false.
 * @return bool True when the theme textdomain is successfully loaded, false otherwise.
 */
function load_child_theme_textdomain( $domain, $path = false ) {
	if ( ! $path ) {
		$path = get_stylesheet_directory();
	}
	return load_theme_textdomain( $domain, $path );
}
/**
 * Loads the script translated strings.
 *
 * @since 5.0.0
 * @since 5.0.2 Uses load_script_translations() to load translation data.
 * @since 5.1.0 The `$domain` parameter was made optional.
 *
 * @see WP_Scripts::set_translations()
 *
 * @param string $handle Name of the script to register a translation domain to.
 * @param string $domain Optional. Text domain. Default 'default'.
 * @param string $path   Optional. The full file path to the directory containing translation files.
 * @return string|false False if the script textdomain could not be loaded, the translated strings
 *                      in JSON encoding otherwise.
 */
function load_script_textdomain( $handle, $domain = 'default', $path = null ) {
	$wp_scripts = wp_scripts();
	if ( ! isset( $wp_scripts->registered[ $handle ] ) ) {
		return false;
	}
	$path   = untrailingslashit( $path );
	$locale = determine_locale();
	// If a path was given and the handle file exists simply return it.
	$file_base       = 'default' === $domain ? $locale : $domain . '-' . $locale;
	$handle_filename = $file_base . '-' . $handle . '.json';
	if ( $path ) {
		$translations = load_script_translations( $path . '/' . $handle_filename, $handle, $domain );
		if ( $translations ) {
			return $translations;
		}
	}
	$src = $wp_scripts->registered[ $handle ]->src;
	if ( ! preg_match( '|^(https?:)?//|', $src ) && ! ( $wp_scripts->content_url && 0 === strpos( $src, $wp_scripts->content_url ) ) ) {
		$src = $wp_scripts->base_url . $src;
	}
	$relative       = false;
	$languages_path = WP_LANG_DIR;
	$src_url     = wp_parse_url( $src );
	$content_url = wp_parse_url( content_url() );
	$plugins_url = wp_parse_url( plugins_url() );
	$site_url    = wp_parse_url( site_url() );
	// If the host is the same or it's a relative URL.
	if (
		( ! isset( $content_url['path'] ) || strpos( $src_url['path'], $content_url['path'] ) === 0 ) &&
		( ! isset( $src_url['host'] ) || $src_url['host'] === $content_url['host'] )
	) {
		// Make the src relative the specific plugin or theme.
		if ( isset( $content_url['path'] ) ) {
			$relative = substr( $src_url['path'], strlen( $content_url['path'] ) );
		} else {
			$relative = $src_url['path'];
		}
			Advertisement
Changelog Changelog
| Version | Description | 
|---|---|
| 5.1.0 | The $domainparameter was made optional. | 
| 5.0.2 | Uses load_script_translations() to load translation data. | 
| 5.0.0 | Introduced. | 
