説明
determine_locale() は、そのリクエストで、使うべき言語(ロケール)を取得する関数です。管理画面では、ユーザーの言語になります。ログイン画面では、言語の選択(wp_lang)があればその言語、なければ、サイトの言語になります。
基本構文
determine_locale(): string
引数
引数はありません。
戻り値
ロケールの文字列(ja・en_US など)。
使い方(サンプル)
$locale = determine_locale();
if ( 'ja' === $locale ) {
// 日本語
}
注意点
- サイトの言語だけが欲しいときは、
get_locale()。 - ユーザーの言語だけが欲しいときは、
get_user_locale()。
実務での使いどころ
- 翻訳ファイルを、読み込むときに、今の言語を、判定するとき。
- サイトの言語と、ユーザーの言語の、どちらを使うべきか、迷うとき。
よくあるミスと対処
- サイトの言語を使うべき場面で、ユーザーの言語を使っている(または、その逆)。
- 言語コードの形式を、決め打ちしている。
NG例
if ( 'ja_JP' === determine_locale() ) { // 日本語のロケールは、ja
// ...
}
OK例
if ( 0 === strpos( determine_locale(), 'ja' ) ) {
// 日本語
}
使い分け早見表
| 関数 | 返す言語 |
|---|---|
determine_locale() |
そのリクエストで、使うべき言語 |
get_locale() |
サイトの言語 |
get_user_locale() |
ユーザーの言語 |

コメント