WordPressで利用できる多くのプラグインは英語が基本となっています。中には日本語に対応しているものもありますが、決して多くはありません。
そんな場合に、WordPressの管理画面を日本語化する方法について、画像を用いて使い方の手順をまとめています。
Loco Translateのインストール
WordPressの管理画面を好きな言語に翻訳するのに便利なプラグインの代表は「Loco Translate」です。
有効インストール数は100万以上、416件のレビューで★5という、驚異の優良プラグインです。

まずはLoco Translateをインストールして有効化します。
Loco Translateを有効化すると、管理画面の下の方に「Loco Translate」が表示されます。

Loco Translateのメニュー
Loco Translateには次の6つのメニューが用意されています。

ホーム
ホーム画面には使用してる「テーマ」と「プラグイン」が翻訳ファイルを読み込んだ新しい順で並んでいます。

このページに翻訳したいテーマかプラグインが表示されている場合は、クリックすれば翻訳画面に移ることができます。
一番下にある「すべてのプラグインをみる」をクリックすると、「プラグイン」メニューページに遷移します。
テーマ
テーマには有効化されているテーマが表示されます。テーマを翻訳したい場合は、ここで対象となるテーマを選択します。

クリックすると翻訳されているかどうかがわかります。例えば以下のように表示された場合は日本語の翻訳が100%完了していることを示しています。

プラグイン
プラグインにはインストール済みのプラグイン一覧が表示されます。インストール済みであれば、有効化されていないものも表示されます。

対象のファイルをクリックするとどの言語で翻訳がどれだけされているかがわかります。

WordPress
WordPressでは、現在使用しているWordPressの翻訳状況が表示されます。

言語
言語にはインストール済みの言語が表示されます。

これはテーマとプラグインを言語ごとにまとめたものになります。例えば「Japanese」を選択すれば、日本語化されているテーマとプラグインの一覧が表示されます。
表示されるのは翻訳が100%完了しているもののみとなります。

設定
設定ではLoco Translateの詳細を設定を細かくすることができます。基本的にはデフォルトのままで問題ありません。

権限グループの変更
Loco Translateはデフォルトでは対象となるユーザー全員に対してアクセス許可がしてあります。Loco Translateにアクセスできる権限グループを変更したい場合は、ここでチェックを付け外しし、「設定を保存」をクリックします。
例えば、管理者のみにアクセスを許可する場合は以下のようにします。

権限グループとは何か?や新たに権限グループを追加する方法については下記をご参考ください。
・権限グループとは何か?管理者・エディター・投稿者・寄稿者・購読者の違いをわかりやすく解説(管理画面のメニューの表示・非表示)
・ユーザー毎にアクセス権限を変更・新規作成・カスタマイズする方法|User Role Editorの使い方(特定のプラグインのみ表示する/使えるようにする方法)
プラグイン一覧に「翻訳」メニューが追加
Loco Translateを追加すると、管理画面にLoco Translateのメニューが表示されるだけでなく、インストール済みのプラグイン一覧の各プラグインに「翻訳」というメニューが追加されます。
翻訳したいプラグインの「翻訳」をクリックすることでも、翻訳ページに移動することができます。

3つの翻訳メニュー
テーマやプラグインなどを編集しようとすると、上部に次の3つのメニューが表示されます。
- +新しい言語
- PO アップロード
- テンプレートを編集(or テンプレートを作成)

通常、翻訳を行う場合は「+新しい言語」を選択します。
簡単に説明すると、それぞれのメニューでは以下のことができます。
- 「+新しい言語」:新たな翻訳ファイルを追加します。
- 「PO アップロード」:既存の.poファイルをアップロードします。
- 「テンプレートを編集」:翻訳対象一覧となる「.pot」ファイルを編集します。
この3つがそれぞれ何を示しているかを理解するためには、WordPressを翻訳するための3つのファイルについて理解しておく必要があります。
WordPressを翻訳するための3つのファイル
WordPressの翻訳は次の3つのファイルで成り立っています。
- 「.po」ファイル
- 「.mo」ファイル
- 「.pot」ファイル
この3つはファイルの拡張子です。
例えば、プラグインなどの場合は、プラグインのフォルダの中に対象となる「.po」ファイルと「.mo」ファイルが保存されています。通常は「languages」ディレクトリの中に保存されています。
下記の例であれば「admin-ja.po」「admin-ja.mo」というのが翻訳ファイルになります。
・WordPressのディレクトリ/plugins/プラグイン名/languages/admin-language-files/admin-ja.po
・WordPressのディレクトリ/plugins/プラグイン名/languages/admin-language-files/admin-ja.mo
.poファイルとは何か?
.poファイルとはデフォルトの言語と翻訳後の言語を記述したファイルです。翻訳するときに編集するのはこの.poファイルです。
次のように「原文」に対して「翻訳」が登録されています。

.moファイルとは何か?
.moファイルはWordPressが翻訳した言語を読み込むためのファイルです。
翻訳を作成するときに編集するのは「.po」ファイルですが、WordPressが直接このファイルを読み込めるわけではありません。
WordPressが「.po」の内容を読み込んで反映するためには、「.po」をコンパイルして作成した「.mo」ファイルを読み込む必要があります。
このため、「.mo」ファイルは「.po」ファイルを元に作られたファイルで、人間が読むことができないものです。
参考ですが、.moファイルをメモ帳などで開くと以下のようになります。

.potファイル
.potファイルは翻訳対象となる言語を登録したファイルです。翻訳のテンプレートと呼ばれています。基本的には翻訳前の.poファイルと同じ内容になります。
Loco Translateでは、この翻訳のテンプレートとなる.potファイルをベースに、.poファイルを作成し、新たな翻訳を追加・保存します。
プラグインなどを作成する場合に、.potファイルの作成は義務ではありません。このため、翻訳することを意図していないプラグインなどは.potファイルが存在しない場合があります。
.potファイルが存在しない場合は「テンプレートがありません」と表示されます。

テンプレートとは何か?(テンプレートを編集とは何か?)
Loco Translateを使用すると「テンプレート」という用語が頻繁に出てきます。このテンプレートはWordPressのテンプレートファイル(.php)とは異なります。
Loco Translateのテンプレートとは、翻訳の大本となる「.pot」ファイルのことです。
テンプレートが存在する場合
.potファイルが用意されている場合は「テンプレートを編集」と表示されます。

この場合は、特に何も気することなく「+新しい言語」をクリックして、翻訳ファイルを作成していくことができます。
テンプレートがない場合
テンプレートがない場合は「+テンプレートを作成」と表示され、下に「翻訳が見つかりませんでした」と表示されます。

この場合でも、翻訳ができないわけではありません。新たにテンプレート(.potファイル)を作成して、翻訳作業を行うことができます。
テンプレート(.pot)ファイルがない場合に、新たにテンプレートを作成すると、作成したテンプレートファイルには対象のプラグインやテーマの全てのソースコードが記載されます。これは相当な量です。
この中から、翻訳したい単語を選んで、翻訳を追加してきます。
プラグインを翻訳する方法
Loco Translateを使って翻訳する手順として、ここではプラグインを翻訳する方法について実際の流れを紹介します。
まずは、Loco Translateの「プラグイン」メニューを選択します。

表示されたプラグイン一覧から翻訳したい対象のプラグインを選択します。ここでは例として「WP Booking System」の日本語化を行います。
デフォルトではドイツ語やスペイン語などはありますが、日本語は存在していません。

なお、管理画面の表示は以下のようになっています。(もちろんすべて英語です)

翻訳ファイルの作成
まずは、「概要」タブの「+新しい言語」をクリックします。

メニューの中に「テンプレートを編集」がありますが、これを選択しないでください。これを選択すると既存の「.pot」ファイルを編集することになります。
このテンプレートは、プラグインの更新などをすることでファイルのディレクトリと名前が同じであれば上書きされ、追加した変更がなくなってしまうことがあります。
言語の選択で「Japanese」を、場所を選択で「カスタム」を選びます。選択したら「翻訳を開始する」をクリックします。

「場所を選択」では必ず「カスタム」を選ぶようにします。
「システム」や「作者」にファイルを作成すると、プラグインを更新したときに、同じ場所に同じファイルが追加された場合に上書きされて、作成したファイルがなくなってしまうリスクがあります。
なお、保存場所は後から変更することができます。ディレクトリを自分で指定することもできます。

任意の場所に移動したいときは「高度な設定」を選択し、保存先となるディレクトリとファイル名を入力します。

翻訳の開始
「翻訳を開始する」を選択すると、「エディター」が表示されます。作成したばかりでは翻訳は何も記載されていません。

翻訳したい言葉を選んで、一番下の「日本語の翻訳」というところに翻訳を記述します。
日本語を記述すると自動で中段の「翻訳」に入力した内容が表示されます。これでよければ「保存」をクリックします。

すると、「✓OK:POファイルとMOファイルのコンパイルが完了しました」と表示されます。

これで、指定した場所の「.po」ファイルを更新し、さらにその内容で「.mo」ファイルをコンパイルしこれも更新しています。
実際のプラグインを見てみると、対象の箇所が日本語化されていることがわかります。

なお、この作業は対象の「.po」ファイルに以下の記述をした処理になります。
#: includes/base/admin/calendar/views/view-add-calendar.php:23
#: includes/base/admin/calendar/views/view-calendars.php:12
msgid "Add New Calendar"
msgstr "新規にカレンダーを追加する"
翻訳時のヒント:検索をかける
翻訳作業はプラグインがしっかりしたものであればあるほど大変です。100%完了するには膨大な量の翻訳が必要となります。
例えば、以下のように表示される場合はあと1119個翻訳を完了しないと100%にならないということです。

こういう場合は最小限必要な個所を翻訳していくことをお勧めします。検索窓に対象の文字列を入力すると、それを含むもののみが表示されます。

もしくは、「ctrl + F」で検索をかけることもできます。
%dや%sとは何か?
翻訳したい言葉の中には「%s」や「%d」といったパーセントから始まる文字が入っている場合があります。(例: Copy from calender #%d(%s)
)
これらは翻訳するときに削除してはいけません。日本語に翻訳した場合は、その中にも記述する必要があります。

例えば上記であれば、以下のように翻訳を追加します。

(原文)Copy from calendar #%d (%s)
(翻訳)カレンダー#%d(%s)からコピーしました。
ここでは%dにカレンダーのID番号、%sにカレンダーの名前が入ります。
%sとは何か?
%sのsとは「String」のことで、文字列の変数が入ることを意味しています。対象となる名前や固有名詞などが入ります。

%dとは何か?
%dとは「digit」のことで、数値の変数が入ることを意味しています。IDや金額などが入ります。

その他のメニュー
エディタでの翻訳を含めて6個のメニューが用意されています。
- エディター
- ソース
- ファイル情報
- 復元
- 移動
- 削除

ソース
ソースには現在編集している「.po」ファイルの中身が表示されます。エディタではないので閲覧専用です。

ファイル情報
ファイル情報にはファイルサイズやディレクトリなどが表示されます。

復元
復元では、一つ前に行った作業を取り消して元に戻すことができます。

移動
移動では対象の「.po」ファイルを任意の場所に移動することができます。

任意の場所に移動したいときは「高度な設定」を選択し、保存先となるディレクトリとファイル名を入力します。

削除
削除では、作成したファイルを削除することができます。
Loco Translateで編集した作業をなかったことにして、まっさらから再度作り直したい場合ときは「完全に削除する」をクリックします。

「PO アップロード」の使い方|.poと.moファイルをダウンロードする方法
Loco Translateでは「PO アップロード」で、既存.poファイルを選択しアップロードすることができます。
もし、作成した.poファイルが既に存在する場合は「エディター」の右上の「PO」をクリックするとダウンロードすることができます。
.moファイルが必要な場合は「MO」をクリックします。
