Uses
Uses | Description |
---|---|
wp-includes/l10n.php: load_script_textdomain() | Loads the script translated strings. |
wp-includes/formatting.php: esc_attr() | Escaping for HTML attributes. |
Prints translations set for a specific handle.
(string) (Required) Name of the script to add the inline script to. Must be lowercase.
(bool) (Optional) Whether to echo the script instead of just returning it.
Default value: true
(string|false) Script on success, false otherwise.
File: wp-includes/class.wp-scripts.php
public function print_translations( $handle, $echo = true ) { if ( ! isset( $this->registered[ $handle ] ) || empty( $this->registered[ $handle ]->textdomain ) ) { return false; } $domain = $this->registered[ $handle ]->textdomain; $path = $this->registered[ $handle ]->translations_path; $json_translations = load_script_textdomain( $handle, $domain, $path ); if ( ! $json_translations ) { // Register empty locale data object to ensure the domain still exists. $json_translations = '{ "locale_data": { "messages": { "": {} } } }'; } $output = <<<JS ( function( domain, translations ) { var localeData = translations.locale_data[ domain ] || translations.locale_data.messages; localeData[""].domain = domain; wp.i18n.setLocaleData( localeData, domain ); } )( "{$domain}", {$json_translations} ); JS; if ( $echo ) { printf( "<script%s id='%s-js-translations'>\n%s\n</script>\n", $this->type_attr, esc_attr( $handle ), $output ); } return $output; }
Version | Description |
---|---|
5.0.0 | Introduced. |
© 2003–2019 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/classes/wp_scripts/print_translations