勉強したことのメモ

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の記事情報をpostIDを指定して取得する方法
他所のサーバからWordPressの記事情報をpostIDを指定して取得する方法

他所のサーバからWPの記事IDを指定した上で、当該IDのタイトル・アイキャッチ画 ...

wp_mail関数でエンベロープFrom(Return-Path)が指定できない場合の対応方法
wp_mail関数でエンベロープFrom(Return-Path)が指定できない場合の対応方法

WordPress内に設置されたお問い合わせのフォームようなシステムでエンベロー ...

Advanced Custom Fieldsでセレクトメニューを動的に生成する方法
Advanced Custom Fieldsでセレクトメニューを動的に生成する方法

WordPressでカスタムフィールド設定用のプラグインAdvanced Cus ...

WordPressテーマファイル内のfunctions.phpの初期設定についてメモ
WordPressテーマファイル内のfunctions.phpの初期設定についてメモ

WordPressのテーマファイル作成時にfunctions.phpを書くが、い ...

WordPressでタグやカテゴリの複数検索
WordPressでタグやカテゴリの複数検索

WordPressでカテゴリのアンド検索や、タグとカテゴリの同時検索を行いたかっ ...