get_user_locale()
云策文档标注
概述
get_user_locale() 函数用于获取用户的区域设置(locale)。如果用户设置了非空字符串的区域设置,则返回该值;否则返回 get_locale() 的返回值。
关键要点
- 参数 $user 可以是用户 ID 或 WP_User 对象,默认为当前用户
- 返回值为字符串类型,表示用户的区域设置
- 函数内部处理逻辑:优先检查用户对象,若无效则回退到 get_locale()
代码示例
function get_user_locale( $user = 0 ) {
$user_object = false;
if ( 0 === $user && function_exists( 'wp_get_current_user' ) ) {
$user_object = wp_get_current_user();
} elseif ( $user instanceof WP_User ) {
$user_object = $user;
} elseif ( $user && is_numeric( $user ) ) {
$user_object = get_user_by( 'id', $user );
}
if ( ! $user_object ) {
return get_locale();
}
$locale = $user_object->locale;
return $locale ? $locale : get_locale();
}
原文内容
Retrieves the locale of a user.
Description
If the user has a locale set to a non-empty string then it will be returned. Otherwise it returns the locale of get_locale() .
Parameters
Source
function get_user_locale( $user = 0 ) {
$user_object = false;
if ( 0 === $user && function_exists( 'wp_get_current_user' ) ) {
$user_object = wp_get_current_user();
} elseif ( $user instanceof WP_User ) {
$user_object = $user;
} elseif ( $user && is_numeric( $user ) ) {
$user_object = get_user_by( 'id', $user );
}
if ( ! $user_object ) {
return get_locale();
}
$locale = $user_object->locale;
return $locale ? $locale : get_locale();
}
Changelog
| Version | Description |
|---|---|
| 4.7.0 | Introduced. |