英語で作成した WordPress プラグインを国際化したので、その手順を書き残します。
この手順は、GlotPress を使った翻訳のみ想定しています。
また、あらかじめ公式ディレクトリにプラグインを掲載している前提です。
プラグインのスラッグを調べる
まずはプラグインの URL からスラッグを調べます。
URL が https://wordpress.org/plugins/analytics-tracking の場合、スラッグは analytics-tracking となります。
プラグインのスラッグは、テキストドメインとして使用します。
テキストドメインとは、WordPress が読み込む翻訳を区別できるようにするための一意識別子です。
GlotPress での翻訳を反映するには、プラグインのスラッグとテキストドメインを一致させる必要があります。
プラグインヘッダにテキストドメインを追加する
プラグインヘッダにテキストドメインを追加すると、管理画面でプラグインを表示するときに WordPress がプラグインメタデータを国際化します。
プラグインヘッダ
/*
Plugin Name: Analytics Tracking
Plugin URI: https://github.com/hirofumi2012/analyticstracking
Description: Add the tracking code snippet to each web page.
Version: 2.6
Author: hirofumi2012
Author URI: https://four-dimensional-friend.appspot.com/
License: GPLv2 or later
Text Domain: analytics-tracking
*/
管理画面
load_plugin_textdomainの追加
プラグインに翻訳ファイルを読み込む処理を追加します。
function myplugin_load_textdomain() {
load_plugin_textdomain( 'analytics-tracking' );
}
add_action( 'plugins_loaded', 'myplugin_load_textdomain' );
なお、プラグインに言語ファイルを同梱しない場合load_plugin_textdomain の第二引数以降は全て省略可能です。
引用元
Late 2015 版、WordPress プラグインの翻訳の仕方
翻訳する文字列のマーク
プラグインで翻訳する文字列とテキストドメインを __()
関数でくくります。
$hello = __('Hello', 'analytics-tracking');
文字列を echo
で出力する場合は、_e()
関数を使います。
_e('Hello', 'analytics-tracking');
参考ドキュメント
I18n for WordPress Developers – WordPress Codex 日本語版
まとめ
以上の手順で、プラグインを GlotPress で翻訳できるようになりました。
GlotPress で翻訳を登録して承認されると、プラグインに反映されます。
参考ドキュメント