文字化け

Q: ページが文字化けしてしまいました!

A: 言語ファイルやテンプレートファイルなどを変更する際(日本語の記述を行う際にはは特に注意して)には、必ず UTF-8 が扱えるエディタを利用し、文字コード"UTF-8N" で保存してください。


Q: 英語表示にしても、
価格の"円" 部分だけ日本語で表示されます。

A: 英語の場合でも、日本円で販売するケースですね。英語でしか販売しないのではなく「日本語<=>英語」の言語切り換えがあるなら、通貨設定機能と共に、Zencart には言語と通貨を連動させる機能がありますので、これを利用しましょう。

1、管理画面のデフォルトモードより、「ローカライズ」>「通貨設定」を開きます。
  デフォルトで  "Japanese YEN" が コード:JPY 、右側シンボル:円 で登録されているのを確認してください。

2、次に日本語用言語ファイル /includes/languages/japanese.php を開きます。
   define('LANGUAGE_CURRENCY', 'JPY');
  という記述があるのが分かるでしょう。

つまり、日本語を利用するときの標準通貨は通貨コード "JPN" 通貨表示が"円"であるという事になります。

これをヒントにして・・・

3、管理画面の通貨設定で、"Japanese YEN(English)" コード:ENY などで、右側シンボル:JPY  などで新しい通貨を追加します。

4、続いて英語用言語ファイル /includes/languages/english.php を開き、
  define('LANGUAGE_CURRENCY', 'USD');  となっているところを、
  define('LANGUAGE_CURRENCY', 'ENY');  に変更してしまいましょう。

これで、ショップ側では "" と "JPY" の2つの通貨が利用可能になりました。

5、後は管理画面の「一般設定」>「ショップ全般の設定」で、表示言語と通貨の連動項目を "True" に設定します。

これで、言語表示が日本語の場合には "円"で、英語の場合には "JPY" で表示されるようになります。

※ ご注意:この方法は、英語表示の場合でも決済通貨を常に日本円にしたい場合の手法です。


Q: 英語表示の際に注文メールの”円”が文字化けします。

A: 原因はすぐ上の項目”英語でも”円”で販売したいのに、表示の際に価格の"円" 部分だけ日本語で表示されます。” と同じですので、そちらを参照してください。

 


Q: 英語の注文への「注文ステータス更新メール」が文字化けしていると言われました。

A: 文字化けでは無く、日本語でメールが送信されていると思われます。
英語の注文に対しては、管理画面の言語定義を "English" にしてから注文処理作業を行ってください。

ショップ側で、英語で表示させていると英語のメールが届くのと同様に、管理画面でも表示させている言語に合わせてメールが送信されます。
従いまして、たとえ英語の注文であっても、管理画面を日本語定義で開いていれば、処理はすべて日本語で行われる事になります。
一つのサイトで複数の言語を利用する場合には、御客様にメールを送るタイミングでは必ず対応する言語を選択して作業をなさってください。
(厳密にいえば日本語と携帯の場合もそうなるのですが、ほとんど違いが無いため問題とはならないでしょう)