[cakephp]多言語展開CMS

[cakephp]多言語展開CMS

グローバル化の影響なのか、多言語展開CMSの需要が伸びています。

n-style;でも複数の事例を扱うようになってきました。CakePHPはけっこう前からi18n対応していました。php4で動作しかつi18n対応のフレームワークは、数年前はCakePHPしかなかったように思います。

手順としては、

  1. アプリケーションを普通に作成。メッセージは
    __(‘english message’);
    のようにしておき、英語で記述すること。
    動的に変化させる必要のある部分はsprintfなどを用いて記述するとよい。
  2. コンソールから
    cake i18n -app /path/to/your/app
    とコマンドを叩いて、 英語のメッセージ文を抽出する。
  3. poeditを使って翻訳する。
  4. 翻訳後、書き出しを行う。
  5. 日本語の翻訳ファイルを
    /app/locale/jpn/LC_MESSAGES/default.po
    に配置する。

ざっと上記のような感じになります。

プログラマーとしては、メッセージの作り方、UIの作り方に注意すればよいと思います。

テンプレートの読み込み分けとか、画像ファイルの読み込み分けなども必要になってきますよね。

意外と、画像の中にテキストが含まれるもの—例えば、ボタンのグラフィック、スローガン入りバナーなど—を「多言語仕様」で作るのを忘れる、なんていうことが起きます。
別途デザイナーさんがいらっしゃるようなプロジェクトでは要検討事項になるでしょう。

Webアプリケーションの多言語展開をお考えでしたら、どうぞn-style;にご用命ください。

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">