【WordPress】多言語化プラグインWP Multilangの使い方

2020年3月17日

WordPreessサイトの多言語化には様々な方法がありますが、5.x系に対応しているプラグインのなかでは『WP Multilang』の使用感がよさそうでした。

が、日本語文献がなく、とりわけテンプレート上での言語切り分けの記述方法を探すのに苦労したので、ここにまとめます。

WP Multilang

テンプレート上のテキストを多言語化

<?php echo __('[:ja]日本語[:en]english[:]'); ?>

テンプレート上の色々を多言語化

<?php
  if (wpm_get_language() == 'en') {
    echo "english";
  }else {
    echo "日本語";
  }
?>

言語切り替えナビゲーションをテンプレートに入れる

wpm_language_switcher ();

パラメーターは下記のとおり

$type – 'list’, 'dropdown’, 'select’. Default – 'list’.
$show – 'flag’, 'name’, 'both’. Default – 'both’.

↓下記のように使う。

wpm_language_switcher ('list','name');

カスタム投稿タイプの多言語化

記事作成時点(2019年11月)では管理画面上からオンオフができないため、ほかの方法で対応。

  1. 利用しているテーマフォルダの中にwpm-config.jsonをつくる
  2. プラグインを停止→有効化する

JSONを作った後、プラグインを停止&有効化しないと効かないので注意。

{
  "post_types": {
    "product": {}
  },
  "taxonomies": {
    "cat_year" : {}
  }
}

※product=投稿タイプスラッグ、cat_year=カスタムタクソノミースラッグ

管理画面上からメニューに入れる

メニューを管理画面上から管理しているときは、メニュー項目の一番下に追加されるLanguagesを使う

↓↓こんなHTMLが出力される。

<li id="menu-item-language-ja" class="wpm-languages menu-item menu-item-type-custom menu-item-object-custom active-language menu-item-language-ja"><a href="#" aria-current="page"></a></li>