2009-04-06 13 views
2

私はCakePHPでi18nを探索するプロセスを始めたばかりです。複数のpoファイルを使用できる適切なファイルと関数の組み合わせを見つけることができません。翻訳可能なテキストのすべてのビットに単一のpoファイル(default.po)を使用したい場合、それはうまく動作しますが、私は非常に迅速にメンテナンスできないようになっています。私は、ドキュメントと私が見つけることができるいくつかの記事を読んだが、本当に1つの.poファイルの些細な使用を超えてi18nに潜んでいる人はいません。私は(私がするつもりはありません(.potファイル)私のPOテンプレートを「焼き」とアプリ/ロケール/ ENG/LC_MESSAGESにそれらをコピーしたCakePHPで複数のpoファイルを使用するには?

  • :私は今だのはここ

    ですデフォルトのテキストをキーとして使用して、欠落しているキーを簡単に見つけ出すことができます)。今のところ、私は-views-layouts-default.poと-views-pages-index.poを持っています。

  • これらの.poファイルでは、各キーに使用するテキストを入力しました。
  • 私のホームページ(views/pages/index.ctp)とデフォルトのレイアウト(views/layouts/default.ctp)では、__()関数で変換したいテキストキーをラップしました。

私はホームページを読み込むと、私はそれらのキーが表示されます。テキストは翻訳されていません。しかし、default.poファイルを投げると、そこにドロップするキーはちゃんと入力されます。私は明らかにパズルの一部を欠いているが、見つけられない。どんな助けでも大歓迎です。

ありがとうございました。

答えて

6

私はCakePHP Googleグループのおかげで見つからなかった部分を見つけました。私は__d()コンビニエンス関数を使って遊んでいましたが、それを私の.poファイルに結びつける方法の明確なイメージはありませんでした。あなたはそれを知っていれば答えは簡単です:

ドメイン翻訳:

__d ('login', 'PLEASE_LOGIN');

がlogin.poという名前のファイルに「PLEASE_LOGIN」キーを探します。私はそのドメイン== poファイル名(拡張子なし)を知らなかった(どこでも読んでいなかった)。すべての違いを生み出した学習。

関連する問題