CakePhp 2.2 でウェブサイトを作成しています。私はこのフレームワークに非常に慣れていません。多言語ページを作成する方法を順を追って説明してください。Locale/eng/LC_MESSAGES.default.po に翻訳を作成しました。fre についても同様です。次は何ですか?表示する言語はどこで設定できますか? ユーザーに表示する言語はどこに記述できますか?
助けてくれてありがとう!
CakePhp 2.2 でウェブサイトを作成しています。私はこのフレームワークに非常に慣れていません。多言語ページを作成する方法を順を追って説明してください。Locale/eng/LC_MESSAGES.default.po に翻訳を作成しました。fre についても同様です。次は何ですか?表示する言語はどこで設定できますか? ユーザーに表示する言語はどこに記述できますか?
助けてくれてありがとう!
次のようにファイルとフォルダを作成する必要があります。
/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関数で。
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')); } }
ステップバイステップのウェブサイト 国際化または 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: 言語へのリンクを追加します。