エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


PoeditでWordPressの日本語対応方法。英語プラグインの日本語翻訳ファイル作成

      2017/03/11

Poeditで WordPressを日本語に対応させる方法を解説

 

WordPressのプラグインを日本語化することになったきっかけ

 
Theme My Login で日本語の翻訳ファイルを作成しました。
 「Theme My Loginでメール認証、管理者承認付の会員管理・基本編
 
  Theme My Loginの日本語化ファイル
  Theme My Loginの日本語翻訳ファイル Ver.6.4.5対応
 
 
ブログのようにユーザは記事を読むだけのサイトであれば、多少英語のテキストが残っていても「まぁいいや」で終わらせるのですが、今回「Theme My Login」というプラグインを使って作っていたサイトは「月極駐車場検索エース」でした。
このサイトは、ユーザが利用する会員制サイトでしたので、ページの項目やエラーメッセージが英語で表示されるというのは受け入れられるものではありませんでした。
 
そんなわけで、自分で英語を和訳ファイルを作成したのですが、その時の手順などを解説します。
 
 

WordPressの多言語対応の仕組み

 
WordPressは、PHP-gettextという仕組みを使って多言語対応を行っています。
 
利用されるファイルは、「.pot」「.po」「.mo」の 3ファイルです。
 

  • .pot:.poの元になるファイル
  • .po:.potを元に翻訳したテキストを編集したファイル
  • .mo:.poを元に作成されプログラムが利用するバイナリファイル

 
 
「.pot」ファイルは、「Potable Object Template」で全てのもとになる「文章」が書かれているテンプレートファイルです。
ただのテキストファイルで、テキストエディタで開いて編集することができます。ここに記載してある文章が翻訳可能な文章です。
たいていは英語で書かれています。
 
「.po」ファイルは、「Portable Object」で翻訳をした文章を編集していくファイルです。
「.pot」ファイルは、日本語以外の言語に翻訳するときにも使いますので、「.pot」ファイルをコピーして、.poファイルを作成し、ファイル名の最後に「-ja」を追加します。
 
 theme-my-login.pot
    ↓
    ↓コピーしてファイル名を変更
    ↓
 theme-my-login-ja.po
 
作成した「.po」ファイルを開いて日本語の翻訳を当てていきます。
 
「.mo」ファイルは、「Machine Object」で .poファイルを実際に翻訳プログラム「PHP-gettext」が利用しやすい形式のバイナリファイルに変換したファイルです。
実際に WordPress(PHP-gettext)が利用するのはこの .moファイルだけですので、このファイルがあれば最低限足ります。
ですが、その後の編集のことを考えて、.po、.moの 2ファイルを提供することが一般的なようです。
 
 

.poファイルの書式(中身)

 
.poファイルはテキストファイルですので、テキストエディタで開いてこのファイルを編集することも可能です。
 

 
例えば、「Theme My Login」の .poファイルは、上記のようになっています。
3行目が翻訳元の英語の文章。
4行目が翻訳をした日本語の文章。
1行目、2行目は、翻訳元の英語が編集されているファイル名と行数。
 
3行目は、元の文章が長い場合は、何行かに分けて書かれている場合もあります。
 
.potファイルは、4行目の翻訳した日本語の文章が編集されていない状態のファイルです。
 
 

翻訳ファイル.moファイルを作成する方法

 
翻訳ファイル「***.po」を実行ファイル「***.mo」に変換するには「Poedit」というツールを使うと便利です。
 
 Poedit
  https://poedit.net/
 
他にも変換するツールはあるのだと思いますが、この「Poedit」は変換するだけではなく、.poファイルを編集するエディタとしても使い勝手のいいエディタになっていますので、「Poedit」を使って翻訳ファイル .poファイルを編集しながら、実行ファイル .moファイルも生成するという方法が便利でしょう。
 
 
ちなみに、「Poedit」は OSDNサイトからもダウンロードできるようですが、本家サイトの方が最新がダウンロードできます。
本家サイトは英語ですが、アプリ自体は日本語になっていますので安心して利用できます。
 
 


 

WordPressのプラグインを日本語化する手順

 
前ふりが長くなってしまいましたが、WordPressのプラグインを日本語化する手順を紹介します。
 

.potファイルのある場所

 
.potファイルは、下記の場所にあります。
 /{wordpress}/wp-content/plugins/{プラグイン}/language/
 
「s-giken」というプラグインの場合は、下記のファイルがあるでしょう。
 /{wordpress}/wp-content/plugins/s-giken/language/s-giken.pot
 
 
この「language」フォルダや、その中に .potファイルが存在しないプラグインは、多言語化対応されていないプラグインということになりますので、日本語化はできません。
プログラムファイル、テンプレートファイルを直接編集する必要があります。
 
 

.poファイルを作成して設置

 
.potファイルは、テンプレートファイルですので、.potファイルをコピーして .poファイルを作成します。そして、日本語の翻訳ファイルですので「-ja」を追加します。
 
例)
 s-giken.pot
   ↓
 s-giken-ja.po
 
.poファイル、.moファイルを設置する場所は、下記になります。
○ /wp-content/languages/plugins/
× /{wordpress}/wp-content/plugins/{プラグイン}/language/
 
「×」の行のプラグインフォルダの中の「language」フォルダの中に .moファイルを設置しても動作します。
なぜなら、プラグインの提供元がオフィシャルに翻訳ファイルを提供する場合は、この中の「language」の中に .moファイルを設置して提供するからです。
 
ですが、このフォルダは、プラグイン提供元がオフィシャルにファイルを提供する場合の設置場所ですので、プラグインのアップデートがあった場合には、まるっと入れ替えられてしまうエリアです。
そのため、ここにファイル入れておくとプラグインのアップデートの時に消えてしまいます。
 
実際に私は .poファイル、.moファイルをプラグインフォルダの中で作成をしていましたので、プラグインのアップデートの時に跡形もなく消えてしまいました。
数日間かけて翻訳したファイルだったのですが...
 
 
ですので、そうならないために「wp-content」直下の「languages」フォルダにファイルを設置します。
 
 
ちなみに、テーマの翻訳ファイルの場合は、下記になります。
○ /wp-content/languages/themes/
× /wp-content/themes/{各テーマ名}/languages/
 
 

.poファイルを編集して .moファイルを作成

 
.poファイルを作成し、所定の場所に設置したら、あとは Poeditで編集するだけです。
 
20160330_wp_01
 
.poファイルを読み込むと、英語と日本語の対比が表示されますので、まだ翻訳していない英文を選択し、「翻訳」の入力エリアに日本語訳を編集していきます。
 
Poeditだと、「保存」をクリックすると、.poファイルが保存されるのと合わせて、.moファイルが生成されますので非常に簡単です。
 
 
翻訳した .moファイルが所定の場所に置き、プラグインのページにアクセスし、日本語化されていれば成功です。
 
全部の英語を翻訳しなくても OKです。翻訳されているところだけが日本語に変換されて表示されます。
 
 

WordPressのプラグインを日本語化するあとがき

 
この WordPressのプラグインを日本語化する記事は、会員管理のためのプラグイン「Theme My Login」を使おうと、日本語化した時の手順などをまとめたものです。
 
ローカル環境のプラグインフォルダでファイルを編集していたために、プラグインをアップデートしたことで、それまで作成していたものをまるっと消されてしまうという悪夢も経験しました。
 
ローカルで作成したものを、FTPでサーバにアップして動作確認、という方法であれば、たとえ、プラグインをアップデートしてファイルが消えたとしてもローカルに元ファイルが残っているわけですが、ローカル環境の WordPressファイルを直接編集していましたからね。
プラグインのアップデートで消されてしまうともう跡形もないワケです。
 
ファイルの復元ツールを使っての復旧も試みてみましたが、かけらも残っていませんでした...
 
そんなわけで、フォルダを入れる場所は二度と間違わないでしょう。
 
 
ちなみに、私は何年か前に受けた TOEICは 250点でした。
TOEICは三択と四択の問題ですので、計算上はランダムに回答しても 280点くらいは取れるはずなのに、です。
 
でも、英語は分かるけど WordPressを知らない方が訳したものよりはマシな訳になっているんじゃないかとは思っています。
もちろん、Google翻訳をフル活用して翻訳しましたが、Google翻訳よりも意味が通る文章になっていると思います。
 
とはいえ、間違っている訳があれば教えてください!

 - WordPress

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

WordPressにプラグインを使わず OGP(Open Graph Protocol)の設定方法解説

WordPressに OGP(Open Graph Protocol)をプラグインを使わずに設定する方法の解説。

Comment Rating FieldでWordPressのコメントに口コミサイト機能を追加

口コミサイトを構築するためのプラグイン。評価点を投票する仕組みをコメント投稿機能に追加する方法で実現。口コミサイトを構築するには十分な機能を提供。

WordPress・Contact Form7、MW WP Form共通 細かなデザイン調整方法

お問い合わせフォームプラグインの Contact Form7、MW WP Formにおけるラジオボタン、チェックボックスなどの見た目を調整する小技を紹介。

WordPressのアップグレードの英語版と日本語版の公開のタイムラグは?

WordPressのアップグレードの英語版と日本語版の公開のタイムラグについて説明しています。

WordPress 画面が真っ白になる不具合があった場合の対応の一つ

WordPressで画面が真っ白になる不具合があった場合の対応方法の説明です。PHPでエラーが起こっている場合がほとんどですがその対処方法です。

Lazy LoadでWordPressの高速化!SEO効果絶大!PVもアップ!

Lazy Loadは、画像を最初にまとめて読み込むことで発生するスピードの遅延を防ぎ、必要な画像から順番に読み込むことでページの表示スピードを向上させるプラグインです。

WordPress 画面が真っ白になる対応の一つ デバッグモード

WordPressで画面が真っ白になる不具合があった場合などのために用意されているデバッグモードの解説です。

Google Code Prettifyの設定方法を解説。 Syntax Highlighterから乗換え、高速化にも最適

Google Code Prettifyでソースコードをきれいに編集する方法の解説。簡単設置とカスタマイズ設置の2つの方法を解説し、カスタマイズするポイントも解説。

WordPressの投稿データ(記事データ)の管理方法

投稿の登録の方法、投稿データの管理方法の解説。MetaManagerなどのプラグインを入れた場合の入力ボックスを表示させる方法についても解説します。

Custom Post Type UIでカスタムタクソノミーを設定し編集する方法解説

カスタムタクソノミーを追加、管理するプラグインCustom Post Type UIの使い方の解説。プラグインの解説ではあるものの、カスタムタクソノミーの仕様の解説でもある。