この記事では、自作したWordPressプラグインの国際化対応で必要なPOTファイルを作成&更新するための環境構築について紹介します。
PCの環境はWindows7、WordPressは4.9.8で作業しました。Macなどでも大体同じになると思います。
プラグインの国際化対応に必要なファイル
まず、WordPressの国際化対応に必要なファイルについて説明します。
WordPressの国際化対応に必要なファイルは3種類あります。有料版であればPoeditだけでPOTファイルの作成もできるようです。
WordPress公式のコマンドラインツールと無料版Poeditを使用しました。
ファイルの種類 | |
POT (Portable Object Template) |
WordPress公式のコマンドラインツールから作成します。ソース中の__()、_e()から自動で翻訳対象のリストを作ってくれます。 POファイルの元になります。ファイル名は「{TextDomain}.pot」です。 例)mch-my-custom-style-css-manager.po |
PO (Portable Object) |
POTファイルから各言語ごとで翻訳したデータを保存したファイルです。PoeditでPOTファイルから作成します。翻訳対象はPOTファイルに記載されたものになります。 ファイル名は「{TextDomain}-{国}.po」です。 例)mch-my-custom-style-css-manager-ja.po |
MO (Machine Object) |
機械が読みやすいフォーマットで作成されるファイルです。Poeditではpoファイルが保存されるタイミングで自動的に作成&更新されます。 ファイル名はPOファイルと同じになります。 |
翻訳テンプレートのPOTファイルを作成する準備
TortoiseSVN をインストールする
POTファイルを生成するための便利ツールがWordPress公式のSubversionで管理されています。
SubversionからダウンロードするためにGUIツールの「TortoiseSVN」をインストールします。
まず、TortoiseSVN公式ページからダウンロードしてインストールします。
カスタムセットアップで「command line client tools」 もインストールしておきます。
コマンドプロンプトを起動して
svn --version
と打って、情報が表示されればOKです。
WordPress公式のツールをダウンロード(チェックアウト)する
WordPress公式のコマンドラインツールをダウンロード(チェックアウト)します。
今回は「D:\wp-i18n」にダウンロードしました。
svn co http://svn.automattic.com/wordpress-i18n/tools/trunk/ D:\wp-i18n
windowsにgettextをインストールする
MacなどはHomebrewを使用して簡単にインストールできます。
Windows版は「gettext 0.19.8.1 and iconv 1.15 – Binaries for Windows」をインストールで使用できました。
一覧から64bit版をダウンロードしてインストールします。
ダウンロードしたインストーラーを起動してインストールします。
インストール先はどこでも大丈夫です。
チェックボックスは2つともチェック。
Select Additional Tasks
・Add application direcory to your environmental PATH
・SET GETTEXTCLDRDIR environment variaable
gettextインストール確認
システム環境設定にインストール先が追加されていればOK。
コマンドプロンプトを新たに起動して「set」と打って追加されていれば認識されています。起動し直さないと反映されていない可能性があります。
コマンドプロンプトで「set」と打って「GETTEXTCLDRDIR」が出てればOKです。
GETTEXTCLDRDIR=C:\Program Files\gettext-iconv\lib\gettext
公式コマンドラインツールでPOTファイルを作成する
POTファイルの保存先のフォルダを作成する
国際化対応したいプラグインフォルダに「languages」フォルダを作成します。
今回はプラグインのフォルダを「D:\wp-plugins\mch-my-custom-style-css-manager」に置いています。
POTファイルを作成する
コマンドプロンプトで国際化対応したいプラグインの「languages」フォルダに移動します。
Explorerで開いて上のパスに「cmd」と入力してエンターキーを押すとその位置でコマンドプロンプトが開くので早いです。
今回は「D:\wp-plugins\mch-my-custom-style-css-manager\languages」で作業します。
POTファイルの作成はWordPress公式コマンドラインツールの「d:\wp-i18n\makepot.php」を使って作成します。
引数には、「wp-plugin」と対象プラグインのルートフォルダを指定します。この様なコマンドになります。
php d:\wp-i18n\makepot.php wp-plugin d:\wp-plugins\mch-my-custom-style-css-manager\
「languages」フォルダに「mch-my-custom-style-css-manager.pot」が作成されます。
gettextをインストールしていないと
gettextをインストールしないでPOTファイルを生成コマンドを実行するとこのようなエラーメッセージが表示されます。
D:\wp-plugins\mch-my-custom-style-css-manager\languages>php d:\wp-i18n\makepot.php wp-plugin d:\wp-plugins\mch-my-custom-style-css-manager\ 'msguniq' is not recognized as an internal or external command, operable program or batch file. D:\wp-plugins\mch-my-custom-style-css-manager\languages>
終わりに。
これで、翻訳作業に必要な大元になるファイルである、POTファイルの作成ができるようになりました。
ソースファイルの方も、POTファイル生成の為の準備をしないと翻訳対象がスカスカな状態です。
この後、翻訳に必要なソース対応をしてPOTファイルの中身を充実させていきます。
それでは、今回はこれまで。
ありがとうございました。
コメント