get_locale()
Retrieves the current locale.
Description
If the locale is set, then it will filter the locale in the ‘locale’ filter hook and return the value.
If the locale is not set already, then the WPLANG constant is used if it is defined. Then it is filtered through the ‘locale’ filter hook and the value for the locale global set and the locale is returned.
The process to get the locale should only be done once, but the locale will always be filtered using the ‘locale’ hook.
Return
(string) The locale of the blog or from the 'locale' hook.
Source
File: wp-includes/l10n.php
function get_locale() {
global $locale, $wp_local_package;
if ( isset( $locale ) ) {
/**
* Filters the locale ID of the ClassicPress installation.
*
* @since WP-1.5.0
*
* @param string $locale The locale ID.
*/
return apply_filters( 'locale', $locale );
}
if ( isset( $wp_local_package ) ) {
$locale = $wp_local_package;
}
// WPLANG was defined in wp-config.
if ( defined( 'WPLANG' ) ) {
$locale = WPLANG;
}
// If multisite, check options.
if ( is_multisite() ) {
// Don't check blog option when installing.
if ( wp_installing() || ( false === $ms_locale = get_option( 'WPLANG' ) ) ) {
$ms_locale = get_site_option( 'WPLANG' );
}
if ( $ms_locale !== false ) {
$locale = $ms_locale;
}
} else {
$db_locale = get_option( 'WPLANG' );
if ( $db_locale !== false ) {
$locale = $db_locale;
}
}
if ( empty( $locale ) ) {
$locale = 'en_US';
}
/** This filter is documented in wp-includes/l10n.php */
return apply_filters( 'locale', $locale );
}
Changelog
Version | Description |
---|---|
WP-1.5.0 | Introduced. |