Ticket #163 (closed 新規開発: 修正済)

Opened 13 years ago

Last modified 8 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 13 years ago by adachi

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

comment:2 Changed 12 years ago by takegami

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

comment:3 Changed 8 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 の修飾子もしくは関数を作成して、テンプレート上で置換を行えるようにする

comment:4 Changed 8 years ago by pineray

r21813 r21816 にて、置換用の関数を作成しました。
r21815 にて、Smarty のカスタム関数を作成しました。

comment:5 Changed 8 years ago by pineray

r21818 にて、SC_CheckError からの出力を差し替えました。

comment:6 Changed 8 years ago by pineray

  • Version 2.12.0 β deleted
  • Milestone changed from EC-CUBE2.12.0 to EC-CUBE2.12.x(仮)

r21819 にて、差し戻しました。

comment:7 Changed 8 years ago by pineray

  • Owner pineray deleted
  • Status changed from assigned to new

r21916 にて、再度適用後、 r21917 r21919 にて各クラスの文言を差し替えておりましたが、 r21920 にて、再度差し戻しました。

comment:8 Changed 8 years ago by pineray

  • Owner set to pineray
  • Description modified (diff)
  • Summary changed from 国際化対応 to テキスト出力多言語対応

comment:9 Changed 8 years ago by h_yoshimoto

  • Milestone changed from EC-CUBE2.12.x(仮) to EC-CUBE2.12.x(多言語対応)

comment:10 Changed 8 years ago by pineray

  • Status changed from new to assigned

r22005 にて、機能部分を再々度適用しました。

comment:11 Changed 8 years ago by h_yoshimoto

  • Status changed from assigned to closed
  • 修正済み set
  • Resolution set to 修正済

ご対応ありました。本件クローズさせて頂きます。

Note: See TracTickets for help on using tickets.