Yii Frameworkで多言語化設定 ‐ yii::t()の使い方
Yii Frameworkの勉強中です。
初フレームワークなので手探りで進んでます。
Yii Frameworkは多言語対応だそうで、yii:t()というメソッドで
用意した翻訳設定を利用したり、google translateなどを使って
動的翻訳したり、その動的翻訳した文章をDBにため込んだりできるそうです。
とりあえず大いなる野望の第一歩ということで
パンくずリストの翻訳設定してみました。
yiicで新たに書き出したサイトhogeのデフォルトの状態で、hoge/protected/config/main.phpの頭の方に
言語設定 ‘language’=>’ja’ を追加します。
return array(
‘basePath’=>dirname(__FILE__).DIRECTORY_SEPARATOR.’..’,
‘name’=>’hoge’,
‘language’=>’ja’,
…
‘basePath’=>dirname(__FILE__).DIRECTORY_SEPARATOR.’..’,
‘name’=>’hoge’,
‘language’=>’ja’,
…
次にhoge/protected/messagesの中に、対応言語のフォルダjaを作り、その中に
翻訳テンプレファイルmogemoge.phpを作成します。
mogemoge.phpに翻訳テンプレを作成します。
framework/messages/yii/ja/zii.phpなどを参考にするとよいでしょう。(てかこっちに直書きしてもいいかも^^;)
<?php
return array(
‘koge’=>’こげこげ’,
‘mage’=>’まげまげ’,
);
?>
return array(
‘koge’=>’こげこげ’,
‘mage’=>’まげまげ’,
);
?>
最後にパンくずリストを使いたいhoge/protected/view/内のviewファイルなんかで、
パンくずをコールする際の変数などで
<?php
$this->breadcrumbs=array(
Yii::t(‘mogemoge’,’Koge’)=>array(‘/koge’),
Yii::t(‘mogemoge’,’mage’),
);?>
$this->breadcrumbs=array(
Yii::t(‘mogemoge’,’Koge’)=>array(‘/koge’),
Yii::t(‘mogemoge’,’mage’),
);?>
のような書き方をしておくと、うまいことパンくずが用意した日本語になってます。
yii::t()の使い方としては、
Yii::t(用意した言語ファイル名,登録した単語)
みたいな使い方になるんでしょうか。
Yii Rapid Application Development Hotshot
posted with amazlet at 13.06.24
Lauren O’meara James Hamilton
Packt Publishing
売り上げランキング: 444,079
Packt Publishing
売り上げランキング: 444,079
コメントを残す