雪降った

今年、初雪。
今年は早すぎるわ。
一日中降ってるが、夜までにやんで欲しい。
夜中も降ったら積もって、交通麻痺しちゃう。

ところで、金曜日、仕事終わってからお弁当注文システムの中国語版を作成した。
さすが、Cakephp、ローカライズが簡単すぎる。

CakePHPの場合は、既存のメッセージを、グローバル関数の__(’ここにメッセージ’,true)で囲ってあげ、
あとはコマンドラインから全部のメッセージを抽出して、翻訳してあげればOK.
ああ、楽チン。

1.既存のメッセージを__(,true)で囲む(うしろのtrueはecho出力しないためのもの、省略するとecho出力)
2.コマンドラインでcakephp>lib>consoleを開いて cake i18n -app appフォルダの絶対パス
3.Extractを選択、対話方式で聞かれるけど、全部デフォルトでOK
4.app>localeフォルダにdefault.potファイルがあるので、それをlocale>chi>LC_MESSAGESにコピー。拡張子をpoに変更(中国語の場合は、’chi’です)
5.poedit(フリーソフト)で開いて、訳文を入力
6.app_controller.phpのbeforeFilter関数あたりに以下を追加
App::import(’default’, ‘l10n’);
Configure::write(’Config.language’, ‘chi’);
7.以上でOKだが、日本語と中国語を切り換えたいので、セッションに言語設定を保存してそれを元にして
‘chi’,'ja’を切り換えるようにした。(右上の国旗ボタンクリックでセッション書き換え)

コメントをどうぞ