edo1z blog

プログラミングなどに関するブログです

cakePHP2.3 多言語化

app/Consoleに移動して、下記を起動する

./cake i18n

E押したら翻訳ファイルみたいのを作ってくれる。詳細は、ここ。わかりやすい。

/app/Locale/jpn/LC_MESSAGES/default.poに出力したファイルをコピーする。僕の場合は、/app/Locale内にdefault.potというファイルが出来たので、それを上記パスにdefault.poとしてコピーした。potをpoにするのが重要でありんす。そのpoファイルに英語に対応する日本語をせこせこ記述すると、日本語訳してくれるようになった。

AppControllerとかで、beforefilterに下記のように書くと環境に関わらず強制的に言語を変更できる。日本の場合は、ja。

function beforeFilter() {
    Configure::write('Config.language', 'en');
}