WordPressのPolylangで言語毎に分岐処理する方法
2024/02/22
WordPressで多言語サイトを作成するにあたりPolylangというプラグインを使用しており、テーマファイル内で言語毎に分岐処理を行いたいというケースがあった。以下に方法をメモ。
対応方法
日本語・英語・中国語の多言語サイトと想定する。分岐処理を行いたいファイルで以下を追記することで対応可能。
$locale = get_locale();
if( $locale == 'en_US' ){
//英語の場合の処理
}else if( $locale == 'zh_CN' ){
//中国語の場合の処理
}else{
//その他の処理(今回のケースだと日本語の処理がここに入る)
}
プラグインのバージョン
使用中のバージョンは2.3.4になる。また、プラグインは以下の通り。
https://ja.wordpress.org/plugins/polylang/
まとめ
cookieのpll_languageに指定言語が入るようなのでこちらを使うかと思いきや、その方法だと正常に動かなかった。恐らくページ表示後にcookieに保存されているんじゃないかと。なので、get_locale()でロケール情報を取得して分岐処理を行う。
関連記事
-
-
WordPressにてPHPのAPCuを使用して高速化を図る方法
先日本サイトのサーバにAPCuを導入した。しかしながら所感にも書いたとおりAPC ...
-
-
WordPressにて指定したユーザでログイン中の場合のみ表記を変更する方法
WordPressを用いたサイトを開発中の際に指定したユーザでログイン中の場合に ...
-
-
WordPressのcontact form7で500エラーの対応方法
WordPressプラグインのcontact form7で送信ボタンを押し、ロー ...
-
-
WordPressにて投稿記事及び固定ページの記事数を取得・表示する方法
WordPressにてページ内に記事数を表示したいというケースがあった。また、通 ...
-
-
Advanced Custom Fieldsで設定した項目を条件に記事一覧を取得する方法
WordPressでAdvanced Custom Fieldsにて設定した項目 ...