どうも、まちゃです。
この記事ではWordPressプラグインのプログラム中で使用する翻訳対象を実際にPOTファイルに追加していく方法について紹介します。
POTファイルはWordPressプラグイン開発で多言語への翻訳作業に必要になる翻訳のテンプレートファイルです。
POTファイル自体の作成方法は「WordPressプラグイン開発の翻訳作業、POTファイル環境構築方法」で紹介しています。
WordPressプラグインを翻訳するためにやること
「Text Domain」と「Domain Path」を記載する
翻訳対象のテンプレートであるPOTファイルを作るためにプラグインのプログラム(PHPファイル)の準備をします。
プラグイン名などを記載している箇所に翻訳の情報を追加します。
ファイルの先頭の情報に「Text Domain」と「Domain Path」を記載します。
「Text Domain」は基本的にプラグインのフォルダ名になることが多いようです。POファイル名にも含める文字列になります。
「Domain Path」は相対パスになるのでどのプラグインも同じ設定になります。
Text Domain: mch-my-custom-style-css-manager Domain Path: /languages/
この様になります。
翻訳ファイルの使用を宣言する
プラグインの処理の中で翻訳ファイルを使用するために、処理の最初の方で読み込み関数(load_plugin_textdomain)を実行します。
第一引数にはtextDomainを指定して紐づけます。
load_plugin_textdomain( 'mch-my-custom-style-css-manager', false, plugin_basename( dirname( __FILE__ ) ) . '/languages' );
翻訳された文字列を取得する
WordPressプラグインで翻訳した文字列を扱うには「__()」と「_e()」があります。
違いは「_e()」は翻訳して出力(echo)まで行う点です。変数にセットするだけなら「__()」を使います。
第一引数にベースとなる英語表記、第二引数にはtextDomainを指定して翻訳ファイルと紐づけています。
$str = __( 'wp-lang test comment.', 'mch-my-custom-style-css-manager');
WordPressの公式コマンドラインツールなどでPOTファイルを生成する時に自動で「__()」と「_e()」から第一引数の文字列を取得して翻訳リストを作成してくれます。
翻訳テンプレートファイルを最新の状態に更新する
WordPressの公式コマンドラインツールで「WordPressプラグイン開発の翻訳作業、POTファイル環境構築方法」と同じ様にPOTファイルをコマンドで生成し直します。
php d:\wp-i18n\makepot.php wp-plugin d:\wp-plugins\mch-my-custom-style-css-manager\
実際に翻訳作業を始める
日本語翻訳ファイルを作成する
まず、日本語に翻訳データを保存するファイル(PO)を作成します。
Poeditを起動します。「翻訳プロジェクトを新規作成する」を選択します。
WordPressの公式コマンドラインツールで作成したPOTファイルを選択して開きます。
翻訳する言語を選びます。日本語に翻訳をしたいのでリストから「日本語」を選びOKボタンを押します。
プラグインのタイトルや説明、「__()」と「_e()」の翻訳対象が自動でリスト化されています。
翻訳作業を始める前に一度「ctrl + s」で保存してPOファイルを作成します。
デフォルトでは「ja.po」になっていますがWordPressのプラグインの命名規則では「{TextDomain}-{国}.po」なので命名規則に合わせます。
今回は「mch-my-custom-style-css-manager-ja.po」になります。
保存先はPOTファイルと同じlanguagesフォルダに保存します。
日本語に翻訳する
後は地道に翻訳したいテキストを選択して、一番下のテキストボックスに入力します。翻訳ソフトで一度すべての文言を事前に翻訳することもできます。
翻訳状態を確認するにはWordPressの設定から言語を変える
翻訳の確認の為に言語を変えるには、WordPressの管理画面の「設定 > 一般」から「サイトの言語」で変更できます。
翻訳対象に漏れが無いかを確認するためには、サイトの言語をEnglishにして日本語が無いか見ます。
プラグイン開発中に翻訳対象に変更があったら
開発を進めて、翻訳対象が増えたり減ったりした時の作業について説明します。
WordPressの公式コマンドラインツールで「WordPressプラグイン開発の翻訳作業、POTファイル環境構築方法」と同じ様にPOTファイルをコマンドで生成し直します。
Poeditを起動して、「翻訳を編集(既存のPOファイルを開いて翻訳を編集する)」を選択します。
POファイル「mch-my-custom-style-css-manager-ja.po」を選択して開きます。POTファイルでは無いので注意してください。
メニューの「カタログ > POT ファイルから更新」をクリックします。
翻訳テンプレートのPOTファイル「mch-my-custom-style-css-manager.pot」を選択して開くと翻訳対象が更新されます。
終わりに
これでWordPressプラグインの翻訳作業の準備が整いました。
後は開発作業を進めて、翻訳対象を追加して、Poeditで翻訳するの繰り返し作業になります。
英語で開発するのは大変ですが、後から対応するのも面倒だったりするので最初から対応しておくと楽ができると思います。
WordPressプラグインは翻訳テンプレートのPOTファイルを用意しておけば、日本語以外の言語への翻訳を誰かがやってくれるかもしれません。
そうなると更にプラグインを使ってくれる人が増えるかもしれませんので用意しておくとチャンスが広がります。
せっかく作ったプラグイン、多くの人に使われると嬉しいですよね。
それでは、今回はこれまで。
ありがとうございました。
![](https://dev.macha795.com/wp-content/uploads/2018/08/2018-08-18_08-43-02_245474-eye-catch-wordpress-register-320x180.jpg)
コメント