Ticket #163 (assigned 新規開発) — at Version 3

Opened 18 years ago

Last modified 13 years ago

国際化対応

Reported by: nanasess Owned by: pineray
Priority: Milestone: EC-CUBE2.12.3en
Component: フロント Version:
Keywords: Cc:
修正済み: yes

Description (last modified by pineray) (diff)

EC-CUBEの国際化対応案

問題点

  1. 画像にもテキストがたくさん使われている.
  2. validation の抽象化が不十分で, エラーメッセージが各所に散乱している.

対応案

  • メッセージは XML に格納
    • 将来の互換性確保のため
    • Factory パターンを使用して, PHP4 を使用した場合と PHP5 を使用した場合で実装を変えられるようにする(要検討
      • PHP4 の XML 対応が悲惨なので, 専用の parser を自作した方が良さそう
      • PHP5 の場合は, Zend Framework を使ってしまう手もあり
  • ロケールに応じて, 参照するテンプレートを分けてしまう.
    • 定数 TEMPLATE_NAME を可変させればいけそう
    • 画像の問題はこれで解決可能
    • Smarty テンプレートが冗長にならないようにしたい.
      • 画像は各ロケールのディレクトリを見に行くが, Smarty テンプレートはロケールごとに作らないようにしたい
  • SC_ErrorCheck のメッセージ出力ロジック(特に項目名)を抽象化させて, できるだけ1箇所にまとめられるようにする

Change History

comment:1 Changed 18 years ago by adachi

  • Version changed from 2.0系(ベータ版) to 2.0系(正式版)

comment:2 Changed 17 years ago by takegami

  • Milestone changed from EC-CUBE to EC-CUBE2.x.x

comment:3 Changed 14 years ago by pineray

  • Status changed from new to assigned
  • 修正済み unset
  • Description modified (diff)
  • Version changed from 2.0系(正式版) to 2.12.0 β
  • Milestone changed from EC-CUBE2.x.x to EC-CUBE2.12.0
  • Owner changed from somebody to pineray

ひとまず、以下の仕様で実装しようと思います。

  • メッセージは .mo ファイルに格納
  • .mo ファイルの読み取りに php_gettext ライブラリーを利用する
  • ロケールに応じて参照するテンプレートや画像のディレクトリーを分けることはしない
  • Smarty の修飾子もしくは関数を作成して、テンプレート上で置換を行えるようにする
Note: See TracTickets for help on using tickets.