Expose the Page Language to JavaScript
Adds a small window.wpideLang object with the current locale, language code and text direction, so your scripts can format dates, numbers or messages correctly without guessing.
Opens WPIDE on
Code
add_action( 'wp_head', function () {
$locale = determine_locale();
$code = strtok( str_replace( '_', '-', $locale ), '-' );
if ( defined( 'ICL_LANGUAGE_CODE' ) && ICL_LANGUAGE_CODE ) {
$code = ICL_LANGUAGE_CODE;
} elseif ( function_exists( 'pll_current_language' ) && pll_current_language() ) {
$code = pll_current_language();
}
$data = array(
'locale' => $locale,
'code' => $code,
'dir' => is_rtl() ? 'rtl' : 'ltr',
);
echo '<script>window.wpideLang=' . wp_json_encode( $data ) . ';</script>' . "\n";
}, 1 );
Notes
Picks up the language set by WPML or Polylang when either is active, otherwise the WordPress locale.
How to add this snippet
- Install WPIDE on your WordPress site (it is free) and open Code Snippets.
- Use snippet above adds it from the library in one click. Or copy the code into a new snippet with the same code type.
- It is added inactive: review the code and settings, then switch it on.