勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

WordPressのPolylangで言語毎に分岐処理する方法

   2024/02/22  WordPress

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

  関連記事

WordPressにて指定したユーザでログイン中の場合のみ表記を変更する方法
WordPressにて指定したユーザでログイン中の場合のみ表記を変更する方法

WordPressを用いたサイトを開発中の際に指定したユーザでログイン中の場合に ...

WordPressの記事公開・更新時に何らかの処理を行う方法
WordPressの記事公開・更新時に何らかの処理を行う方法

WordPressで記事を公開(予約公開含む)もしくは更新した際に何らかの処理を ...

WordPress Popular Postsのサムネイルが表示されない
WordPress Popular Postsのサムネイルが表示されない

WordPressの人気記事を表示させるWordPress Popular Po ...

WordPressのContact Form 7プラグインで入力内容確認及び送信完了ページを実装する方法
WordPressのContact Form 7プラグインで入力内容確認及び送信完了ページを実装する方法

WordPressのContact Form 7プラグインで実装されたお問い合わ ...

WordPressで記事検索時に投稿ID順にならない場合の対応方法
WordPressで記事検索時に投稿ID順にならない場合の対応方法

WordPressでサイト上から記事検索(キーワード検索)を行った場合、通常であ ...