WordPress プラグイン開発者用メモ 多言語対応 – 翻訳リソースファイルの作成手順

プラグイン側の設定

1. 多言語化文字列の記述

多言語化の対象となるテキストを _e() などで記述しておく。
※_e() 内の文字列に日本語が含まれているとあとでエラーになるので注意。

_e('Add New', '{plugin-name}');

プラグイン内の翻訳ファイルのみを適用する場合は、第二引数を指定すること。
第二引数を指定しないと、WordPress本体の翻訳ファイルも適用される。

_e(): 出力
__(): 出力なし

2. load_plugin_textdomainの記述

load_plugin_textdomain('{plugin-name}', false, basename(dirname(__FILE__)).'/lang' );

この場合、plugin-nameディレクトリ内にlangディレクトリを作成しておく。
この中に翻訳ファイルを格納することになる。

Poedit

Poeditをインストール

1. 初期設定

名前とメールアドレス等、必要事項をあらかじめ入力しておく。

2. 新しいカタログを作成(ファイル>New Catalog)

Translation properties

適切な内容を記述。あとでもいい。

Sorces paths

ベースのパス: WordPressがインストールされているディレクトリ
パス: 対象のプラグインディレクトリ

Sources keywords

_e__を追加

6. 抽出

plugin-namge/langディレクトリに、POファイルMOファイルを作成(default.po、default.mo)

7. 保存

_e() のテキストが抽出されているのを確認して保存(ファイル>保存)
このカタログは一旦閉じる

念のためdefault.poをエディタで開いてみて確認

8. 多言語リソースファイルを作成

翻訳文字列を抽出しただけのPOファイルをリネームしてリソースファイル(POTファイル)にする。

default.po → default.pot

default.moは削除
POTファイルのSorces pathsの設定は消去しておく

“X-Poedit-Basepath: /Applications/MAMP/htdocs/wordpress/\n”
“X-Poedit-SearchPath-0: wp-content/plugins/plugin-name\n”

翻訳テキストのファイル名のパスもpluginディレクトリからの相対パスに書き換えておく。

8. 各言語用のファイルを作成

Poedit>ファイル>New Catalog from POT file

さきほど作成したリソースファイルを選択

Poedit上で翻訳して別名で保存。
日本語の場合、{plugin-name}-ja.poとなる。
同時に{plugin-name}-ja.moも生成される。

以上。

管理画面上で自動翻訳されていることを確認できればOK

Comments

初めてWordPressプラグインを作りました。公式ディレクトリに登録するまでにお世話になったサイトまとめ | しらさかブログZ にコメントする コメントをキャンセル