今月開催の WordBench 地域合同企画「春の翻訳&ドキュメンテーション祭り」向け、WordPress プラグイン・テーマ翻訳シリーズ第2弾です。
前回の「2014年版: WordPress プラグイン・テーマの翻訳を始めてみよう」記事最後で「Poedit の無料版を使って翻訳部分を抽出する方法については別途書きます」としていたのですが、その部分を説明したいと思います。以下はプラグインの例ですが、テーマでもほぼ同様に進められます。
Blank WordPress Pot から POT ファイルを作成する
- Blank WordPress Pot をダウンロードします(右下の「Download ZIP」をクリック)。
- ここで実際に必要なのは、Blank-WordPress.pot のみです。この POT ファイルの名称を plugin-textdomain.pot(例: Contact Form 7 なら wpcf7.pot)に変更します(※)。
- POT ファイルをプラグインの /languages/ ディレクトリ内に移動します。
- 移動したファイルを Poedit で開くと、以下の画面が表示されます。
- 下の「ソースから抽出」をクリックして出てきたダイアログで「翻訳の設定」タブに移動します。プロジェクト名(プラグイン名とバージョン)や翻訳チーム情報(チームがなければ自分の情報でも)などを編集しましょう。
- ダイアログの「OK」をクリックすると、更新した POT 内容の確認が表示されます。問題なければ再び「OK」をクリック。
- これで POT ファイル生成は完了です。このファイルは翻訳せず、そのまま保存しましょう。その際に生成される plugin-textdomain.mo ファイルは必要ないので削除します。
POT ファイルはあくまでも翻訳用テンプレートなので、ここには日本語訳を含めません。翻訳するファイルは別途、この POT ファイルを元に plugin-textdomain-ja.po を作成する必要があります(前回の「用意された POT ファイルを使う」を参照)。
Blank WordPress Pot では、i18n Tools で抽出できるものと同様に15の国際化関数がカバーされています。
前にも書いたとおりプラグインヘッダー内のプラグイン名・プラグイン説明は現在 Poedit では抽出できないので、その点だけは注意しましょう。
※ plugin-textdomain が不明な場合
プラグインの Text Domain はプラグインヘッダーに書かれている場合もありますが、もしなければ load_plugin_textdomain という関数をプラグインファイルから探しましょう。その一つ目の引数がテキストドメインです。Contact Form 7 の例:
function wpcf7_load_plugin_textdomain() { load_plugin_textdomain( 'wpcf7', false, 'contact-form-7/languages' ); }
P.S. 前回の記事に、Grunt と Codestyling Localization を使った方法も追記しました。
コメントを残す