Poedit 取扱説明書

WordPress 1.5以降、ソースコード内の各国語に翻訳すべき文字列をmoファイルに格納し、国際化に対応しているのは周知の事実。wordpress/wp-content/languagesに入っている.moファイルがWordPress本体のものです。しかし、後付けプラグインの言語までは網羅できません。英語がわかる人はまるで問題ないですが、やはり、日本語に変換されているほうがわかりやすいし、見た目も統一されていいものだと思います。

このプロジェクトの基本の「き」、Poeditについてまとめておきたいと思います。(執筆時のPoeditのバージョンは v1.3.6 でした。)

準備編

1. Poedit入手
PoeditからDLします。(2008年3月現在、1.4が最新です) Windowsユーザーなら poedit-1.*-setup.exe をダウンロードします。(Mac用は開発中) あと解凍・設置します。

Poeditが起動したら、自動的に次のことを求められます。「名前」「メールアドレス」の入力(これがpoファイルに記入されます)、使用する言語(ここでは「Japanese」)の選択をしましょう。

日本語変換の原理

例えば、bsuite日本語版で説明します。まず本体のbsuite.phpをテキストエディタで開くと・・・

27行目あたりに

load_plugin_textdomain('bsuite');

とあります。ローカライズされたプラグインはこの記載が必ずあります。これは、bsuite-∼.moを読み込むことを意味しています。逆に言えば、ローカライズするファイルの先頭にこの文言を挿入しなければならないということです。

例えば957行目あたりに

$notice = "<div id='bstat_hilite'>".__("The following search terms have been highlighted: ","bsuite");

とあります。ローカライズされる文章は必ず__or_eのコードが先頭についています。そして「The following search terms have been highlighted: 」をbuite-∼.moファイルの中の翻訳された言語に入れ替えられてブラウザに表示するというわけです。

Poeditのファイル

Poeditに関係するファイルは、.pot、.po、.moの3ファイル。

.pot・・・翻訳する文字列のみ抽出したファイル。プラグインに同梱されていれば、プラグイン本体を改造することなく、翻訳可能だ。

.po・・・翻訳済みの編集用ファイル。ちょっとした修正が可能。自分なりの表現に変えてmoファイルを作り出すことが出来る。

.mo・・・ローカライズの本体ファイル。プラグイン本体はこのファイルを読み込んでいる。アップロードはこのファイルだけでいい。

なお、UTF-8、EUC-JP、Shift-JISのエンコードに対応できます。

Poeditの使い方

1. プラグイン編集編
まだまだpotファイルを同梱してくれている作者さんは少ないので、プラグインを編集しなければなりません。

<?php ∼ ?>内に記載されている場合は__を、それ以外では_eを使うような認識しかないのですが、

The following search terms have been highlighted: の場合・・

例1:

  1. __("The following search terms have been highlighted: ","bsuite");

例2:

  1. <?php _e("The following search terms have been highlighted: ","bsuite"); ?>

みたいな感じになります。いろいろなパターンがあるので、日本語版を数多く入手して参考にしてみてください。

//---Otsukareさんフォロー START-------------------------------

$letters = echo __('words');

$letters = _e('words');

が等価になります。
__('') は値を返す、_e('') は文字列を出力すると覚えておけばいいでしょう。

前者は他の関数内で利用されることが多く、後者は直接文字列を出力するときに利用されます。printf()sprintf() の違いのようなものです。

//---Otsukareさんフォロー END-------------------------------

2. 翻訳準備編
poファイルをテキストエディタで開いてみればわかりますが、

  1. #: wp-content\plugins/bsuite.php:955
  2. msgid "The following search terms have been highlighted: "
  3. msgstr "次の検索語句をハイライトしました: "

ヘッダーのあと、この3行の繰り返しで構成されています。

1行目:格納場所/表示行数
2行目:翻訳する文字列
3行目:置き換える日本語

ということで、Cドライブ(Dドライブ)にwordpressフォルダを設置して、実際の配置どおりに翻訳したいプラグインを設置します。

3. Poedit操作

○ Poeditを起動させ、ファイル>新規カタログをクリック。

真ん中と右の画面はぬかりなく

○ 上記のように記入する。

ドメイン名の後は必ずハイフンで・・

○ 最後にOKをクリックし、格納場所(同じプラグインフォルダ内)とファイル名を決定する。

翻訳する原文が自動で取り込まれる

○ すると翻訳箇所が自動的に取り込まれる。(よくファイルがないと怒られることあり)

原文の下の段に訳を入力していく

○ 上が翻訳する文章で下に翻訳した文章を”∼”に記入する。作業中断時は左から2番目の「カタログの保存」をクリックすると保存され、自動的にmoファイルも生成される。(moファイル自動生成を設定の場合)

○ 配布する場合など、まず1種類(例えばUTF-8)のpoファイルを完成させる。完成したpoファイルをテキストエディタで開き、他のエンコード(例えばEUC-JP)で保存しなおす。その際、ヘッダー部分の・・・

"Content-Type: text/plain; charset=utf-8\n"

の”utf-8”の部分を”EUC-JP”に書き換えること。これをPoeditで読み込み、保存をクリックするとEUC-JPのmoファイルが出来上がるわけです。

こうしてまとめるとかなり長い手順ですね。ちょっとずつ触ってみてはどうでしょうか。既に日本語化されたpoファイルを編集してお国の方言に書き換えてみるとか・・・。(苦笑) Let’s try!

参考にさせていただいた記事

高度テクニック編

hiromasa zone 『WordPress プラグイン日本語化 Tips』より一部抜粋しています。(ひろまささんに許可いただきました。ありがとうございました。)

  1. $name = "hiromasa";
  2. echo "Hello, I'm $name. How are you.";

この場合における『メッセージの __ 関数 _e 関数 でのくくりだし』ですが・・・

このままでくくりだしてしまうと・・・

  1. $name = "hiromasa";
  2. echo __("Hello, I'm","ドメイン") .$name. __(".How are you.","ドメイン");

となってしまい・・・

  1. msgid "Hello, I'm"
  2. msgstr "こんにちは。私は "
  3.  
  4. msgid ".How are you."
  5. msgstr " です。ご機嫌いかがですか。"

こんな風に無理やりなものになってしまいます。日本語訳だとこれでもいいかもしれませんが、他言語だと一体どうなってしまうのか :?:

  1. $name = "hiromasa";
  2. echo sprintf(
  3. __("Hello, I'm %s. How are you.", "ドメイン"), $name);

ともってくれば・・・

  1. msgid "Hello, I'm %s. How are you."
  2. msgstr "こんにちは。私は %s です。ご機嫌いかがですか。"

となり、不自然になりません。

あまりローカライズを意識していない作者さんはこのようなコードをとっていることが多いので是非マスターしておきたいです。 :wink:

ツイート

Top

Top

コメントが 46件あります

コメント RSS を使用するとこの投稿のコメントが確認できます。
TrackBack URI
コメントしてみる?

ピンバック/トラックバック

  1. Favicon 姫踊子草の楽屋裏
  2. Favicon Standing Tall » poEditの翻訳メモリ機能を使う
  3. Favicon G線上の - あるKnightについて
  4. Favicon 开源翻译辅助软件 | 梦苑工作室
  5. Favicon 初めての WordPress プラグイン日本語化ガイド | detlog.org
  6. Favicon WP-SlimStat-Exを導入して日本語化してみた - サイト管理者のよんよん日記
  7. Favicon YN design yukinachu.com » Blog Archive » Poedit WordPressで日付英語表示を試す
  8. Favicon wordpressのテンプレート wpskinのブログ
  9. Favicon WordPressの日付表記をPoeditで変更してみた。 | 煤式自動連結器
  10. Favicon WP-PostViewsの日本語化 | H2+ Goes On
  11. Favicon 新宿ITベンチャーブログ
  12. Favicon WordPress上でgettextを翻訳するプラグイン | プログラマーと数学
  13. Favicon 進捗ツール カスタマイズ方法 « FIC進捗ツール
  14. Favicon WordPressプラグインの日本語化 - おじさんの備忘録-番外編-
  15. Favicon アプリーシ » __(~)という関数
  16. Favicon Life SCOPES » パスワード解除前の文章を改変・デザインする方法
  17. Favicon Telmina 3rd · 【WordPress】「Tarski」テーマ・日本語化モジュール(テスト版)を作成してみました。
  18. Favicon WordPress上でgettextを翻訳するプラグイン « WordPress Expert Blog
  19. Favicon WIKI (PukiWiki/TrackBack 0.3)
  20. Favicon くぅちゃんのWaiWai倶楽部 » @tashidesu MEMO Poedit http:/…
  21. Favicon コメントの画像認証 – SI CAPTCHA Anti-Spam | あんとんさんち
  22. Favicon wordpressやwordpressプラグインの日本語リソースの編集方法 | Design Spice
  23. Favicon wordpressで、コメントをどうぞ、という文字を変更するには? | 午後13時4分
  1. akabekobeko さんのTweet
    2009年 12月 5日 04:44 # twitter

    プラグインの翻訳は、ページで紹介されている方法が分かりやすそう。Poedit は GUI もあるので親しみやすい。http://wp.mmrt-jp.net/plugin-japanization-project/poedit/

  2. toshifme さんのはてなブックマーク
    2009年 12月 15日 18:18 # hatena bookmark

    poeditのわかりやすい使い方です。

  3. sgkbs791 さんのはてなブックマーク
    2010年 1月 29日 10:39 # hatena bookmark

    [WEB制作参考サイト:ワード ]

  4. datoka さんのDelicious
    2010年 3月 5日 02:46 # delicious

    POEditのわかりやすい解説

  5. toratorax さんのTweet
    2010年 3月 14日 17:11 # twitter

    [Bookmarked!] MMRT daily life :poEdit 取扱説明書 http://bit.ly/bDYYur

  6. tashidesu さんのTweet
    2010年 4月 23日 21:59 # twitter

    @tashidesu MEMO Poedit http://wp.mmrt-jp.net/plugin-japanization-project/poedit/ #waiwaiclub

  7. nriverred さんのTweet
    2010年 7月 28日 01:58 # twitter

    WPのプラグイン? 翻訳ソフトみたいだね http://ow.ly/2h3d9 QT @s_a_t_s_u: Poeditって?

  8. niceguy7762 さんのTweet
    2010年 10月 1日 07:49 # twitter

    Poedit 翻訳ツール http://wp.mmrt-jp.net/plugin-japanization-project/poedit/

  9. noboo さんのTweet
    2011年 6月 8日 03:29 # twitter

    MAC版のmoファイル生成アプリめっけ♪♪ → http://ow.ly/5bOAB  Poedit 取扱説明書 → http://ow.ly/5bOx7

  10. taktak さんのTweet
    2011年 8月 25日 12:03 # twitter

    MMRT daily life » Poedit 取扱説明書 http://t.co/abKjuyZ

Top

コメントをどうぞ


:x :wink: :twisted: :shock: :sad: :oops: :o :mrgreen: :lol: :idea: :evil: :cry: :cheesy: :arrow-u: :arrow-l: :arrow-d: :D :?: :) :!: 8)
あなたの情報 (必須) help

twitter

e-mail

Top

Web Services by Yahoo! JAPAN