ZenCart v1.3.8a日本語版+zen-mobile 0.9-1にするには。

ビッグマウス社による1.3.8a日本語版など、Zen Cart.JP版日本語Zen Cart以外の日本語版Zen Cartに関する話題など
アバター
sumida

ZenCart v1.3.8a日本語版+zen-mobile 0.9-1にするには。

投稿記事by sumida » 2008/11/05 15:32

zen-mobile 0.9-1をZen Cart v1.3.8aに入れました。
以下、その手順です。

(1) zen-mobile 0.9-1
   ファイルを、EUCからUTF-8に変換する。
   (v1.3.8aがUTF-8になっているので。)
(2) includes/init_includes/overrides/init_sessions_for_mobile.php
   require(DIR_WS_FUNCTIONS . 'strict_sessions.php');
    --> require(DIR_WS_FUNCTIONS . 'sessions.php');
   に変更する。
   (呼び出すファイルがなくなっているので。)
(3) includes/classes/ZenCart/Mobile.php
   「EUC-JP」 --> 「UTF-8」
   に変更する。(13カ所)
   (v1.3.8aがUTF-8になっているので。)

これで、何とか表示できました。(動作は、確認していません。)
アバター
tkymiwa
記事: 24
登録日時: 2008/9/26 18:13

Re: ZenCart v1.3.8a日本語版+zen-mobile 0.9-1にするには。

投稿記事by tkymiwa » 2008/11/05 17:53

大変貴重な情報ありがとうございます。当方も1.3.8aで携帯対応を探していましたが、まだ対応していないようだったので躊躇しておりました。なんとか動作してくれるとありがたいのですが。
アバター
sumida

Re: ZenCart v1.3.8a日本語版+zen-mobile 0.9-1にするには。

投稿記事by sumida » 2008/11/05 18:34

なお、差分で修正が必要なものは、v1.3.8aのソースを基に修正が必要です。
アバター
sumida

Re: ZenCart v1.3.8a日本語版+zen-mobile 0.9-1にするには。

投稿記事by sumida » 2008/11/05 21:57

すみません。記述を整理します。

(1) zen-mobile 0.9-1
  構成するファイルの文字コードをUTF-8にします。
  (v1.3.8aの文字コードに合わせます。)

(2) 上書きされるファイル
  README.txtに記述されている差分マージが必要なファイルをv1.3.8a用にします。
  (v1.3.8aに差分をマージしたファイルと差し換えます。)

(3) includes/classes/ZenCart/Mobile.php
  携帯に表示する文字の文字コード変換を「EUC-JP --> SJIS」から「UTF-8 --> SJIS」に変更する。
  ((1)でUTF-8にしたので、この文字コードからShift_JISに変換します。)
  includes/classes/ZenCart/Mobile.php
    'EUC-JP' --> 'UTF-8'  (コメント部分も含め、13カ所)

(4) includes/init_includes/overrides/init_sessions_for_mobile.php
  session関係のファイルがなくなっているので、「strict_sessions.php」から「sessions.php」に変更する。
  includes/init_includes/overrides/init_sessions_for_mobile.php
    require(DIR_WS_FUNCTIONS . 'strict_sessions.php');
    --> require(DIR_WS_FUNCTIONS . 'sessions.php');

逆に、整理できなかったでしょうか?
アバター
sumida

zen_mobileでのログイン用の修正

投稿記事by sumida » 2008/11/06 16:47

PCから作成したアカウントで携帯からログインするには、以下の修正が必要なようです。
includes/templates/zen_mobile/templates/tpl_login_default.php

<?php echo zen_draw_input_field('email_address', '', zen_set_field_length(TABLE_CUSTOMERS, 'customers_email_address', '20') . ' id="login-email-address"'); ?>
<?php echo zen_draw_hidden_field('securityToken', $_SESSION['securityToken']); ?>
<br class="clearBoth" />

なお、携帯からのアカウント作成は、姓名のふりがなに関する部分で修正が必要なようです。(includes/templates/zen_mobile/templates/tpl_modules_create_account.phpなど)
アバター
sumida

zen-mobileでのアカウント作成用の修正

投稿記事by sumida » 2008/11/06 18:58

携帯でアカウントを作成するには、以下の修正が必要なようです。
ただし、使用にあたり、制限があります。

FURIKANA_NESESSARY --> ADD_FURIGANA == 'true'に変更します。
対象ファイルは、
  includes/templates/zen_mobile/templates/tpl_account_edit_default.php(2カ所)
  includes/templates/zen_mobile/templates/tpl_modules_address_book_details.php(2カ所)
  includes/templates/zen_mobile/templates/tpl_modules_checkout_new_address.php(2カ所)
  includes/templates/zen_mobile/templates/tpl_modules_create_account.php(2カ所)
  includes/modules/zen_mobile/create_account.php(5カ所)
です。
制限事項
(1) [管理画面][一般設定][顧客アカウントの設定]ふりがな入力枠を表示する言語がjaだけの場合
  携帯で、ふりがななしのアカウントを作成できる。
(2) [管理画面][一般設定][顧客アカウントの設定]ふりがな入力枠を表示する言語がja,ja-mobileを指定した場合
  携帯で、アカウントを作成できない。
  理由:アカウント作成時、
       v1.3.0.2は、customersテーブルにふりがなを格納している。
       v1.3.8aは、address_bookテーブルにふりがなを格納するが、customersテーブルにふりがなを格納しない。
       そのため、アカウント作成SQLの実行でカラム名がないため、エラーとなる。

したがって、(a)で運用すれば、とりあえずは可能なようである。
根本的には、zen-mobileでv1.3.8a対応をしてもらわないと。

当方、不携帯なもので、実機で確認できません。
とりあえず、Firefox+user agent switerでやってみました。
アバター
sumida

メールの文字コードの修正

投稿記事by sumida » 2008/11/07 21:52

携帯からアカウントを作成した場合、Welcomeメールが文字化けしました。
以下の修正が必要なようです。

includes/languages/zen_mobile/japanese.php
    EUC-JP --> utf-8 (4カ所)
アバター
ゲスト

Re: zen-mobileでのアカウント作成用の修正

投稿記事by ゲスト » 2008/11/08 22:29

フリガナ付きのアカウント作成については、

sumida さんが書きました:制限事項
(1) [管理画面][一般設定][顧客アカウントの設定]ふりがな入力枠を表示する言語がjaだけの場合
  携帯で、ふりがななしのアカウントを作成できる。
(2) [管理画面][一般設定][顧客アカウントの設定]ふりがな入力枠を表示する言語がja,ja-mobileを指定した場合
  携帯で、アカウントを作成できない。
  理由:アカウント作成時、
       v1.3.0.2は、customersテーブルにふりがなを格納している。
       v1.3.8aは、address_bookテーブルにふりがなを格納するが、customersテーブルにふりがなを格納しない。
       そのため、アカウント作成SQLの実行でカラム名がないため、エラーとなる。


ですが、
v1.3.8aを使用した場合は、以下のようにすればとりあえずできそうです。

(1) 修正元になるファイルをコピーする。(コピー先の同名ファイルをリネームしておくと良いでしょう。)
   コピー元 includes/modules/create_account.php
   --> コピー先 includes/modules/zen_mobile/create_account.php

(2) v1.3.0.2とzen-mobileの差分を、includes/modules/zen_mobile/create_account.phpにマージする。
  (a) 変更
$nick = zen_db_prepare_input($_POST['nick']);
- if (ACCOUNT_DOB == 'true') $dob = (empty($_POST['dob']) ? zen_db_prepare_input('0001-01-01 00:00:00') : zen_db_prepare_input($_POST['dob']));
+ if (ACCOUNT_DOB == 'true') $dob = zen_db_prepare_input($_POST['dob']);
$email_address = zen_db_prepare_input($_POST['email_address']);
$street_address = zen_db_prepare_input($_POST['street_address']);
  (b) 変更
// add in regular email welcome text
- $email_text .= "\n\n" . EMAIL_TEXT . EMAIL_CONTACT . EMAIL_GV_CLOSURE;
+ $email_text .= "\n\n" . EMAIL_TEXT . EMAIL_GV_CLOSURE;

$html_msg['EMAIL_MESSAGE_HTML'] = str_replace('\n','',EMAIL_TEXT);
  (c) 削除
// include create-account-specific disclaimer
- $email_text .= "\n\n" . sprintf(EMAIL_DISCLAIMER_NEW_CUSTOMER, STORE_OWNER_EMAIL_ADDRESS). "\n\n";
$html_msg['EMAIL_DISCLAIMER'] = sprintf(EMAIL_DISCLAIMER_NEW_CUSTOMER, '<a href="mailto:' . STORE_OWNER_EMAIL_ADDRESS . '">'. STORE_OWNER_EMAIL_ADDRESS .' </a>');
  (d) 赤字部分の変更
$country = zen_db_prepare_input($_POST['country']);

なお、ふりがなの入力フィールドの長さが異常に短いのですが、入力はできます。
アバター
MICHIMATSU

Re: ZenCart v1.3.8a日本語版+zen-mobile 0.9-1にするには。

投稿記事by MICHIMATSU » 2010/5/18 17:15

ZenCart v1.3.8a日本語版にzen-mobile 0.9-1をインストールしようとしましたが、zen-mobile 0.9-1のファイルがEUCになっています。
どうすれば文字化けなしでUTF-8に変換するのが可能でしょうか。
ネットでダウンロードしたソフトを使ったら全て文字化けなししまいました。
アバター
きたきつね
記事: 147
登録日時: 2007/11/02 08:58

Re: ZenCart v1.3.8a日本語版+zen-mobile 0.9-1にするには。

投稿記事by きたきつね » 2010/5/18 18:55

MICHIMATSU さんが書きました:ZenCart v1.3.8a日本語版にzen-mobile 0.9-1をインストールしようとしましたが、zen-mobile 0.9-1のファイルがEUCになっています。
どうすれば文字化けなしでUTF-8に変換するのが可能でしょうか。
ネットでダウンロードしたソフトを使ったら全て文字化けなししまいました。

私がいつも文字コード変換に使っているのは
http://www.kashim.com/kanjitranslator/index.html
です。
UTF-8への変換はBOMに気をつけてくださいね。
あなたも私も一般人
( ^ω^) 照れるので様は止めてね
http://zencart-pro.com/
http://bigmouse.jp/
アバター
ゲスト

Re: ZenCart v1.3.8a日本語版+zen-mobile 0.9-1にするには。

投稿記事by ゲスト » 2010/9/12 10:39

ハルナ さんが書きました:ZenCart v1.3.8a日本語版にzen-mobile 0.9-1をインストールしました。

携帯を使った時
これでとにかく携帯で注文が出来るようになりましたが、携帯で見ると、■カテゴリで探すの下に”叱偲室酌借”と意味の解らない文字化け見たいのが出ていますが、どうすればこれを削除可能でしょうか。

パソコンを使った時
また、zen-mobile 0.9-1を投入した後、パソコンで注文をしますと、
決済の時(ご注文内容を確認してくださいのページで注文確認ボタンを押した時)に画面が真っ白になってしまいます。
また、注文確認書(メール)も送られません。
この解決方法を教えて下さい。
アバター
mako★

Re: ZenCart v1.3.8a日本語版+zen-mobile 0.9-1にするには。

投稿記事by mako★ » 2010/9/21 01:56

こんにちわ!


>>(2) 上書きされるファイル
  README.txtに記述されている差分マージが必要なファイルをv1.3.8a用にします。
  (v1.3.8aに差分をマージしたファイルと差し換えます。)


1.38aをまったく新規でインストする場合は、
全部上書きするだけで、OKなんでしょうか?

>  (v1.3.8aに差分をマージしたファイルと差し換えます。)

ここは、どういう作業をすればよろしいでしょうか?

winmargeで開いたら、確かに差異は分かりますが、

snapshot/1.30/1.38aと、これらを
どう比較してどこの何が最終系とするものんでしょうか?



どなたか、親切な方
お願いできませんでしょうか?


ありがとうございます(マコ★)
アバター
ゲスト

Re: ZenCart v1.3.8a日本語版+zen-mobile 0.9-1にするには。

投稿記事by ゲスト » 2010/9/21 17:57

zen-mobileそのものは、v1.3.0をベースにしています。

また、v1.3.0とv1.3.8では、ふりがなの実装が異なっています。
そのため、zen-mobileによって上書きされるファイルには、v1.3.8と互換性がありません。

そこで、v1.3.0とzen-mobileの差分をとり、その差分部分を、
v1.3.8に反映することで、zen-mobileをv1.3.8に対応させようとするものです。

“公式版以外の不具合情報(1.3.8aなど)” へ戻る