0

CakePhp 2.2 でウェブサイトを作成しています。私はこのフレームワークに非常に慣れていません。多言語ページを作成する方法を順を追って説明してください。Locale/eng/LC_MESSAGES.default.po に翻訳を作成しました。fre についても同様です。次は何ですか?表示する言語はどこで設定できますか? ユーザーに表示する言語はどこに記述できますか?

助けてくれてありがとう!

4

3 に答える 3

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翻訳に置き換えられます。

次に、言語を設定する必要があります。

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

ページの言語を設定する場合は、これをブートストラップファイルに貼り付けます。ウェブページの探索中に言語を変更する場合は、次のように貼り付けます。

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

コントローラのbeforeFilter関数で。

于 2012-07-07T14:40:41.367 に答える
0

CakePHP クックブックにはかなり良いガイドがあります。

現在のユーザーの言語を設定するには、次のように設定を Session オブジェクトに保存します。

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

コントローラーの beforeFilter の各リクエストの開始時に、Configure も構成する必要があります。

class AppController extends Controller {
    public function beforeFilter() {
        Configure::write('Config.language', $this->Session->read('Config.language'));
    }
}
于 2012-07-09T12:47:25.410 に答える
0

ステップバイステップのウェブサイト 国際化または CakePHP の多言語化 2+

手順に従ってください:

ステップ 1. Cakephp は多言語を必要とする文字列をどのようにキャッチできますか?

ステップ 2: 異なる言語で文字列を挿入するための pot ファイルを作成します。

ステップ 3: app/Config/routes.php に以下のコードを追加します。

ステップ 4: app/Config/core.php でデフォルト言語を設定する

ステップ 6: app/Controller/AppController.php にヘルパーと Cookie コンポーネントを追加する

ステップ 7: app/Controller/AppController.php にメソッドを追加する

ステップ 7: _setLanguage(); を呼び出します。app/Controller/AppController.php の beforeFilter() の下

ステップ 8: 言語へのリンクを追加します。

リンクは http://saidul.songzog.com/blog/details/874/step-by-step-website-internationalization-or-multi-language-in-cakephp-2になります

于 2013-09-25T11:44:35.990 に答える