WordPressプラグインで翻訳されていない箇所を翻訳する!
WordPressのプラグインは非常に便利で有効的なものが多いですが、全てが日本語訳されているわけではありません。その場合は、自分で翻訳をする必要があります。
ただ、日本語訳をする上で気をつけなければならないことがあるのでそのポイントなどを簡単に解説致します。
WordPressのプラグインを翻訳する上で必要なこと
・プラグインの翻訳したい該当箇所が翻訳機能に対応していること(esc_html_eや_eで該当の文言が出力されていること)
対応していない場合は、翻訳機能で対応できないので無理やり書き換えするしか無いかと思います。過去にjavascriptなどで強制的に書き換えを行ったこともありました。
必要なツール
・「POEDIT」というソフト
・テキストエディタ
WordPressのプラグインの翻訳の手順
「ultimate member」という会員管理プラグインの例で少し解説します。
プラグインをインストールすると「wp-content/languages/plugins」の中にプラグインの翻訳ファイルが入ります。
まったく日本語訳されていない場合等入らない場合もあります。「.po」と「.mo」の2つがあります。(.poから.moを生成するので.poだけでいいと思いますけどバックアップのため)
2つを手元にダウンロードしておきます。
今回は、パスワードリセット部分が日本語訳になっていなかったので該当プログラムを確認してみました。
プログラムを読まないと行けない場合もあるのですが、現在もメンテナンスされているププラグインは、だいたいMVCモデルになっているのでそれらしいテンプレートがあるので見つけやすいですね。
今回翻訳したい箇所もtemplateフォルダの中にそのままの名前でtemplateが用意されていました。
こんなふうに見つけていきます。「If an account・・・」の文面がIDとなり、「ultimate-member」が翻訳の識別子となります。大まかプラグイン名と一致していますがプラグインの他、そのアドオンを入れた場合に名前がプラグイン名と異なるのでもし翻訳が反映されないのであればことのあたりをチェックしてみると良いです。
今回翻訳したいIDが.poファイルにかかれているのか確認します。
記述されれいない場合は自身で「msgid」「msgstr」を追記します。
追記例:
追記したら今度はPOEDITで、「.po」ファイルを開いて保存して、「.mo」の内容を更新してFTPでアップ!すればOKです。
翻訳できているのか実際にページを更新します。
ちょっと手間ですがこのような方法でWordPressの翻訳を行っていきます。