Recommended
PDF
PDF
WordPressの多言語プラグイン「qTranslate」で、あなたのサイトも世界にデビュー♪
PDF
Word pressのプラグインを翻訳してみませんか?
PDF
WordPress 多言語化プラグインqTranslateの紹介
PDF
デザイナー向け 初めてのPhp ~サイト制作に役立つtips~
PDF
PPTX
PDF
WordCampOsaka2012 WordPressあるある
PDF
PDF
WordPress公式テーマ登録のための5ステップ
PDF
KEY
WordPress中級者への道!テンプレートタグはどう動くのか!?
PPTX
Sphinxで作る貢献しやすいドキュメント翻訳の仕組み
PDF
WordPressの多言語プラグイン「qtranslate」で、あなたのサイトも世界にデビュー♪ @Co-Edo
PDF
日本語フォーラムで回答してみよう!~誰でも出来るWordPressへの貢献〜
PDF
信頼性が高くハイパフォーマンスなテーマ開発テクニックでライバルに差をつけろ!
PPTX
What's New in WordPress 4.2
KEY
PDF
PDF
Introduction to GNOME Translation (OSC2012 Tokyo/Spring)
PPTX
WordCamp Kansai 2015 ハンズオン - 踏み出してみよう!翻訳の第一歩 #wck2015
PDF
テーマ制作時の疑問とノンプログラマーにも優しいテーマを考える
PDF
はじめてみよう! WordPress プラグイン・テーマ翻訳
PDF
Duotone の子テーマを作ろう、そうしよう - Wordcamp Fukuoka 2010
PPTX
PDF
世界標準ブログツール WordPressの最新版3.0と豊富なプラグイン
PDF
WordPress ドキュメンテーション作成と翻訳
PDF
PDF
初心者向けWordPress DB & Performance
PDF
More Related Content
PDF
PDF
WordPressの多言語プラグイン「qTranslate」で、あなたのサイトも世界にデビュー♪
PDF
Word pressのプラグインを翻訳してみませんか?
PDF
WordPress 多言語化プラグインqTranslateの紹介
PDF
デザイナー向け 初めてのPhp ~サイト制作に役立つtips~
PDF
PPTX
PDF
WordCampOsaka2012 WordPressあるある
Similar to WordBench Osaka 春の大翻訳祭り
PDF
PDF
WordPress公式テーマ登録のための5ステップ
PDF
KEY
WordPress中級者への道!テンプレートタグはどう動くのか!?
PPTX
Sphinxで作る貢献しやすいドキュメント翻訳の仕組み
PDF
WordPressの多言語プラグイン「qtranslate」で、あなたのサイトも世界にデビュー♪ @Co-Edo
PDF
日本語フォーラムで回答してみよう!~誰でも出来るWordPressへの貢献〜
PDF
信頼性が高くハイパフォーマンスなテーマ開発テクニックでライバルに差をつけろ!
PPTX
What's New in WordPress 4.2
KEY
PDF
PDF
Introduction to GNOME Translation (OSC2012 Tokyo/Spring)
PPTX
WordCamp Kansai 2015 ハンズオン - 踏み出してみよう!翻訳の第一歩 #wck2015
PDF
テーマ制作時の疑問とノンプログラマーにも優しいテーマを考える
PDF
はじめてみよう! WordPress プラグイン・テーマ翻訳
PDF
Duotone の子テーマを作ろう、そうしよう - Wordcamp Fukuoka 2010
PPTX
PDF
世界標準ブログツール WordPressの最新版3.0と豊富なプラグイン
PDF
WordPress ドキュメンテーション作成と翻訳
PDF
More from Takayuki Miyauchi
PDF
初心者向けWordPress DB & Performance
PDF
PDF
PDF
VCCW - Vagrant based WordPress development environment
PDF
PDF
アプリケーションプラットホームとしてのWordPress
PDF
PDF
WordPress Meetup at HUBBA Thailand
PDF
PDF
BookPress開発チームから見た 電子書籍の世界
PDF
PDF
PDF
AWS+WordPressでつくるFirefoxアプリ
KEY
KEY
PDF
PDF
PDF
PDF
JAWS-UG Kansai 特別編 AWSがあるとき。ないとき。
PDF
Cybozu Kintone x WordPress
WordBench Osaka 春の大翻訳祭り 1. 春の大翻訳祭
WordBench Osaka
2013/04/13
Takayuki Miyauchi
13年4月15日月曜日
2. 3. 4. 以上!
(宣伝は自粛します。)
13年4月15日月曜日
5. 6. 7. 8. poedit
http://sourceforge.jp/projects/sfnet_poedit/
13年4月15日月曜日
9. 10. Gettext
黒い画面の人はこれ
$ msgfmt -o wp-total-hacks-ja.mo
wp-total-hacks-ja.po
.poを編集後、上記コマンドを実行
13年4月15日月曜日
11. WordPress i18n Tools
プラグイン&テーマ開発者向け
http://svn.automattic.com/wordpress-i18n/tools/trunk/
$ php makepot.php wp-plugin /path/to/plugin
翻訳メッセージの抽出が超簡単!
13年4月15日月曜日
12. ポイント!
✓ 開発者じゃない人は poedit または Google
✓ 複数の人で共有しながら翻訳するならGoogle
13年4月15日月曜日
13. 14. 1. テーマやプラグインの中に専用のディレクトリ
があります。
(デフォルトでは languages)
2. その中で .po ファイルを作成&翻訳
3. .po をコンパイルして、.moを作成
4. 作者さんに、.po と .mo を送る!
13年4月15日月曜日
15. ポイント!
✓ language/ 以下にある .po と .mo が言語フ
ァイルです!
✓ .po は人が編集するためのファイル
✓ .mo はWordPressが実際に読むファイル
13年4月15日月曜日
16. 17. ‣ テーマは、常に ja.po (ja.mo)
‣ プラグインは、example-ja.po (example-ja.mo)
example の部分はテキストドメインというやつ
13年4月15日月曜日
18. ✓ textdomainわかんねー!
‣ languages/ 以下にある .pot のファイル名の部分が
テキストドメイン
‣ .pot がない場合はつくる必要があります。
(ちょっとむずかしい。。。)
13年4月15日月曜日
19. 20. ✓ まれに pot のファイル名が間違ってる場合も
ある...orz
(英語圏の人が開発したものは多言語化のテス
トをしてないことが多い)
13年4月15日月曜日
21. これは超簡単に電子書籍が作れると評判の
bookpressクライアントプラグインのソース
超簡単に電子書籍を作りたい方は
http://ja.bookpress.me/
13年4月15日月曜日
22. ✓ 他にも load_textdomain() という関数を探し
て、その第一引数を見るという手も。
これは誰でも超簡単にAWS上でWordPressが使えると評判の、
Amimotoでも使用されてるプラグインのソース
http://ja.megumi-cloud.com/
13年4月15日月曜日
23. ポイント!
✓ テキストドメイン間違えると翻訳結果が適用
されないから要注意ね!
13年4月15日月曜日
24. 25. ✓ ちなみに今回は .pot があるのを前提にしま
す。
✓ .pot がない場合は、黒い画面(ターミナル)の
出番になります。。。
13年4月15日月曜日
26. 27. 28. 29. 30. 31. ✓ 保存すれば .mo も同時に生成されます。
✓ まめに保存しながら確認しましょうね。^^
13年4月15日月曜日
32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. ✓ %s とか %d は、プレースホルダーと呼ばれる
もので、動的に値が変わります。
printf(__('We deleted %d spam messages.'), $count);
%d の部分に $count の値が入る。
「%d件のスパムを削除しました。」
13年4月15日月曜日
44. ✓ %1$s とか %1$d は複数のプレースホルダー
がある場合に使用します。
printf(__('Your city is %1$s, and your zip code is
%2$s.'), $city, $zipcode);
%1$s の部分に $city が、%2$s の部分に $zipcode が入ります。
「あなたの 郵便番号は %2$s 、都市名は %1$s です。」
13年4月15日月曜日
45. ✓ %s とか %1$s と、%d とか %1$d は、文字
列か数字の違いです。
13年4月15日月曜日
46. ✓ 一部の翻訳のみ適用されない!?
‣ .po に fuzzy って行があると思います。
‣ これは他にも同じようなのがあるけど、オッケー?み
たいな意味です。
‣ fuzzy って書いてある行を1行まるごと削除し
て、.moをつくれば翻訳が適用されます。
13年4月15日月曜日
47. 48. ✓ 作者さんとのコンタクト方法
‣ メール、ブログへのコメント、twitter、フォーラムな
ど。
‣ リアクションがなければ、コンタクト方法を変えて数
日様子を見る感じ。
13年4月15日月曜日
49. ✓ 英語のやり取り怖い!
‣ 僕のとこにくる翻訳のメールは、ほとんどが1行。
‣ Hi, I have translated your ○○ plugin to
Japanese. Your plugin is awesome great !
Thanks !
‣ ぼくが送る時も、だいたいこんな感じです。
13年4月15日月曜日
50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. まず環境を構築
1. Xcodeをインストール
2. gettextライブラリを homebrew 等でインス
トール
3. i18n Tools をインストール
13年4月15日月曜日
65. 66. gettextライブラリをインストール
$ ruby -e "$(curl -fsSL https://
raw.github.com/mxcl/homebrew/go)"
$ brew install gettext
13年4月15日月曜日
67. WordPress i18n Toolsを
インストール
$ cd
$ mkdir wordpress-i18n-tools
$ cd wordpress-i18n-tools
$ svn co http://i18n.svn.wordpress.org/tools/trunk/ .
13年4月15日月曜日
68. 抽出方法
$ cd wp-content/plugins/example-plugin
$ cd lnaguages
$ ~/wordpress-i18n-tools/makepot.php wp-plugin .
以上で .pot が生成される(はず)。
13年4月15日月曜日
69. 70. 71. 自作プラグイン等で、.mo のパスを書き換えること
で、暫定的に日本語を適用できます。
add_filter(
"load_textdomain_mofile",
"my_load_textdomain_mofile",
10,
2
);
function my_load_textdomain_mofile($mo, $domain){
if ($domain === 'example') {
return ‘/path/to/example-ja.mo’;
}
return $mo;
}
この方法ならプラグインがアップデー
トされてもオッケー!
13年4月15日月曜日
72. ✓ テーマの翻訳を手っ取り早くするなら、
twentytwelveなどのデフォルトテーマの
ja.mo を、そのまま適用しちゃおう。笑
// 子テーマの functions.php に以下のようなソースを。
load_theme_textdomain(
'ここにテーマのテキストドメイン',
dirname(__FILE__).'/languages'
);
13年4月15日月曜日
73. 74. <?php
add_filter('gettext', 'change_post_to_article');
add_filter('gettext_with_context', 'change_post_to_article');
add_filter('ngettext', 'change_post_to_article');
add_filter('ngettext_with_context', 'change_post_to_article');
function change_post_to_article($translated) {
$translated = str_ireplace('アサイド', 'プレスリリース',
$translated);
return $translated;
}
13年4月15日月曜日
75.