我正在cakePhp 2.2中创建一个网站。我对这个框架很新。我需要一个帮助,一步一步如何创建多语言页面。我在Locale / eng / LC_MESSAGES.default.po中创建了翻译,对于fre也是如此。下一步是什么?我在哪里可以设置要显示的语言?在哪里可以编写为用户显示的语言?
感谢您的帮助!
答案 0 :(得分:0)
你必须: 按如下方式创建文件和文件夹:
/app/Locale/eng/LC_MESSAGES/default.po (English)
/app/Locale/fre/LC_MESSAGES/default.po (French)
在default.po文件中,您需要创建对:
msgid "Hello"
msgstr "EN Translation"
这样,每个Hello单词都将被EN Translation替换。
接下来你必须设置你的语言,即
Configure::write('Config.language', 'fre');
如果您想为页面设置语言,请将其粘贴到bootstrap文件中,如果您想在浏览网页时更改它,请粘贴:
$this->Session->write('Config.language', 'fre');
在控制器中的beforeFilter函数中。
答案 1 :(得分:0)
有一个pretty good guide in the CakePHP Cookbook.
要设置当前用户的语言,您可以将设置存储在 Session对象,如下所示:
$this->Session->write('Config.language', 'fre');
在控制器的每个请求开始之前,你过滤掉了 应配置配置:
class AppController extends Controller { public function beforeFilter() { Configure::write('Config.language', $this->Session->read('Config.language')); } }
答案 2 :(得分:0)
分步网站国际化或cakePHP 2 +
中的多语言按照以下步骤操作:
步骤1. Cakephp如何捕获需要多语言的字符串?
步骤2:为不同语言的插入字符串创建pot文件。
步骤3:在app / Config / routes.php中添加以下代码
步骤4:在app / Config / core.php中设置默认语言
步骤6:在app / Controller / AppController.php中添加helper和Cookie组件
步骤7:在app / Controller / AppController.php中添加方法
第7步:调用_setLanguage();在app / Controller / AppController.php中的beforeFilter()下
步骤8:添加语言链接: