翻訳ファイル(.moファイル)から.poファイルへの変換を行う方法と翻訳するときの注意点 | Knowledge Base

翻訳ファイル(.moファイル)から.poファイルへの変換を行う方法と翻訳するときの注意点

WordPressのみならず、海外製のツールなどには翻訳ファイルというのが存在し、翻訳ファイルを通じて英語のツールが日本語で表記されているというものが多数あります。

このファイルは●●.moという形式のファイルであることが多く、この.moファイルは●●.poという形式のファイルを翻訳ファイルとして変換したもの。また、.poファイルは「.pot」ファイルという翻訳の元となるファイルから生成されたものです。

従って、.poファイルが存在しなければ.moファイルが作れないということになります。

翻訳前のファイルは.potという拡張子のファイルなので、これがプラグインなどのフォルダ内にあればpoeditなどのソフトを使って一から翻訳ファイルを作成することは可能ではありますが、.potファイルがない場合や.moファイルのみ存在する場合などでは、できるだけ今ある翻訳部分はそのままにしつつ自分なりの言葉に修正したいときがあります。

ただ、.moファイルしか存在しなかった場合には直接編集することは不可能、.poファイルも存在しない、という時に役立つのがmoファイルからpoファイルを生成する方法です。

今回はオンラインで変換するツール、Wordpressプラグイン、2つの方法を紹介します。

インターネット上のツールを使ってmoファイルからpoファイルを生成する

オンライン上で変換してくれるサイトがあります

Convert .mo to/from .po translation files; Optimize (optipng) PNG files

このサイトでファイルの相互変換ができます。使うのは.mo→.poの変換が主だとは思いますが、逆の変換も可能です。
moファイルをpoファイルに変換、poファイルをmoファイルに変換する以外にも画像ファイルをサイト用に最適化することができます。

WordPressのプラグインを使ってmoファイルからpoファイルを生成する

WordPressには翻訳を行うのに便利な

Wordpressでプラグインやテーマの翻訳をする手順と言えば、.potファイルなり.poファイルなりをプラグインフォルダから取り出して、POEDITなどの翻訳ソフトで翻訳をしたのちにFTPでアップロードしてというのが通常でしたが、この煩わしい手順をWordpressの管理画面でできるようにしたのが「Loco Translate」です。

というプラグインがあります。管理画面上で翻訳を行うことができる便利なプラグインですが、.moファイルしかないプラグインの翻訳を「Loco Translate」を使って編集し保存すると、足りなかった.poファイルを生成してくれます。

もともとの.mo翻訳ファイルが不十分だったときの対処

上記の方法を使って翻訳を編集してみたら、全く内容が足りないという場合もあります。これは、元々の「.pot」ファイル(翻訳の元となるファイル)が不十分だったり、.moファイルが不十分だったりする場合に発生します。
これを解消するには、最初から翻訳ファイルを作って一から編集しなおすのが一番手っ取り早い方法です。

この場合にも「Loco Translate」は重宝します。元々は翻訳ファイルのないプラグインに対して翻訳できるファイルを生成して編集するプラグインですからこれが本来の使い方になります。

Wordpressでプラグインやテーマの翻訳をする手順と言えば、.potファイルなり.poファイルなりをプラグインフォルダから取り出して、POEDITなどの翻訳ソフトで翻訳をしたのちにFTPでアップロードしてというのが通常でしたが、この煩わしい手順をWordpressの管理画面でできるようにしたのが「Loco Translate」です。

ここからは余談ですが、Wordpressの翻訳ファイルはプラグインやテーマのディレクトリにそのまま転送しておくと、アップデートなどでフォルダ内容が上書きされて消えてしまうことがありますので、以下の対策をしておくことをおすすめします。

当サイトなどプラグインの日本語化ファイルを配布しているサイトから入手した翻訳ファイルを適用して、英語表記だったプラグインを日本語化する方法を2つ紹介します。

一生懸命翻訳したのに無駄に終わることもあるので注意

上記の方法で変換したり、プラグインを使って翻訳したりするのはWordpressのプラグインを使う上で有効な方法なのですが、1つ注意したいことがあります。それは
翻訳したファイルが実際に適用されているかを早期に確認すること
です。

プラグインで翻訳ファイルが適用されるためには翻訳可能な文字列である「接頭語」がプラグインのソースの中に含まれている必要があります。これがないと翻訳元のデータがあるから一生懸命どんどん翻訳しても・・・適用されないという結果となってしまいます。

変換ツールも「Loco Translate」プラグインも、確実に日本語化できる部分を表示するわけではなく、あくまでもネタを抽出するツールですから、慣れてくればソースを確認してきちんと翻訳対象になっているかの確認ができるのですが、一応数件の翻訳をしてみたところで確実に日本語表記になるかをテストしたほうが無難です(私は何度かこれで失敗しました)。たとえ.moファイルが存在していたとしても確実に翻訳が適用されるということではないということを知っている必要があります。

トップへ戻る