2012-07-07 130 views
0

我在cakePhp 2.2中創建一個網站。我對這個框架非常陌生。我需要一個幫助,一步一步如何創建多語言頁面。我已經在Locale/eng/LC_MESSAGES.default.po中創建了翻譯,對於fre也是如此。下一步是什麼?我可以在哪裏設置要顯示的語言?我在哪裏可以編寫語言來顯示給用戶?cakePhp和多種語言

感謝您的幫助!

回答

0

你必須: 創建文件和文件夾的如下:

/app/Locale/eng/LC_MESSAGES/default.po (English) 
/app/Locale/fre/LC_MESSAGES/default.po (French) 

在您需要創建對default.po文件:

msgid "Hello" 
msgstr "EN Translation" 

有了這個,每一個字你好將被替換與EN翻譯。

接下來,您必須設置語言即

Configure::write('Config.language', 'fre'); 

如果你想設置的語言爲你的頁面,粘貼在引導文件,如果你想探索網頁粘貼此過程中改變它:

$this->Session->write('Config.language', 'fre'); 

inforeFilter函數在你的控制器中。

0

有一個pretty good guide in the CakePHP Cookbook.

要設置語言爲當前用戶,你可以存儲設置在 Session對象,像這樣:

$this->Session->write('Config.language', 'fre'); 

在每個請求的開始你的控制器的beforeFilter你 應該配置配置以及:

class AppController extends Controller { 
    public function beforeFilter() { 
     Configure::write('Config.language', $this->Session->read('Config.language')); 
    } 
} 
0

在CakePHP 2+

只要按照步驟一步一步網站國際化或者多國語言:

步驟1.怎樣才能這就需要多語言CakePHP的抓字符串?

第2步:爲不同語言的插入字符串創建pot文件。

步驟3:添加以下代碼在應用程序/配置/ routes.php文件

步驟4:設置默認在app /配置/ core.php中

步驟6語言:添加輔助細胞和曲奇組分在應用/Controller/AppController.php

步驟7:在應用程序/控制器/ AppController.php添加的方法

步驟7:調用_setLanguage();在app/Controller/AppController中的beforeFilter()之下。PHP

第8步:將鏈接添加到語言:

鏈接將被 http://saidul.songzog.com/blog/details/874/step-by-step-website-internationalization-or-multi-language-in-cakephp-2