テンプレートモンスターのZen-Cart用テンプレートをZen-Cart日本語版にインストール

テンプレートモンスターのZen-Cart用テンプレート(#24654)をZen-Cart日本語版(v1.3.0.2-l10n-jp-6)にインストールしました。
Zen-Cart1.3.8 英語版用なので、若干カスタマイズが必要でした。

Zen-Cart用テンプレート(#24654)

テンプレートモンスターのZen-Cart用テンプレートのインストール方法

readme.txtに従ってインストールします。
そのままショップ画面をアクセスすると、以下のエラーが表示されますのでその対応を行います。

1.Fatal error: Call to undefined function: zen_get_generated_category_path_rev() in

zen_get_generated_category_path_rev関数が1.3.0では未定義な為のエラー。
/includes/functions/functions_categories.php に1.3.8から該当関数をコピー&ペーストする。

2.Fatal error: Call to undefined function: zen_get_new_date_range() in

zen_get_new_date_range関数が1.3.0では未定義の為のエラー。
/includes/functions/functions_lookups.php に1.3.8から該当関数をコピー&ペーストする。

3.メーカーを選ぶと以下のエラーが発生する

Warning: require(includes/modules/FILENAME_PRODUCT_LISTING_ALPHA_SORTER.php) [function.require]: failed to open stream: No such file or directory in C:\xampp\htdocs\zencart\includes\templates\theme228\templates\tpl_index_product_list.php on line 166

Fatal error: require() [function.require]: Failed opening required 'includes/modules/FILENAME_PRODUCT_LISTING_ALPHA_SORTER.php' (include_path='.;C:\xampp\php\pear\') in C:\xampp\htdocs\zencart\includes\templates\theme228\templates\tpl_index_product_list.php on line 166

FILENAME_PRODUCT_LISTING_ALPHA_SORTER が1.3.0では未定義の為のエラー。
/includes/filenames.php に

を追加する。
加えて、 product_listing_alpha_sorter.php を /includes/modules/ 下にコピーする。

4. banner2 と banner4 が表示しない

トップページのみ表示するように、 /includes/templates/theme228/common/tpl_main_page.php で $this_is_home_page をチェックしているが、1.3.0では $this_is_home_page が未定義の為表示されない。
/includes/init_includes/init_category_path.php に1.8.3から $this_is_home_page の定義部分をコピー&ペーストする。

の末尾に以下追加

5.商品一覧でカテゴリーイメージが表示されない

定数 PRODUCT_LIST_CATEGORIES_IMAGE_STATUS が未定義な為
1.8.3の /zc_install/sql/mysql_zencart.sql の該当部分を使い、phpmyadminでDBにインサートする。

6.商品詳細でカテゴリ名とカテゴリーイメージが表示されない

$category_icon_display_image と $category_icon_display_name が未定義な為。
/includes/modules/category_icon_display.php に1.8.3の定義部分をコピー&ペーストする。

7. No.6 で PRODUCT_INFO_CATEGORIES_IMAGE_STATUS も未定義なので1.8.3の /zc_install/sql/mysql_zencart.sql の該当部分を使い、phpmyadminでDBにインサートする。

8.おすすめ商品のタイトルが複数行になると、表示が不揃いになるので、タイトルが一行に収まるように変更

/includes/modules/theme228/featured_products.php

9.カートで支払い情報入力でエラー

Fatal error: Call to undefined method payment::in_special_checkout() in C:\xampp\htdocs\kesela2\includes\templates\theme228\templates\tpl_checkout_payment_default.php on line 39

関数in_special_checkout()が未定義。
/includes/classes/payment.php に1.8.3の定義部分をコピー&ペーストする。

10.配送先変更ボタンが機能しない

$editShippingButtonLink が未定義な為。
Classic Template と同じように決め打ちに変更。
/includes/templates/theme228/templates/tpl_checkout_confirmation_default.php

11.配送先変更ボタンが表示しない(お届け先と配送方法を記入してください画面)

$displayAddressEdit、$editShippingButtonLink が未定義な為。
Classic Template と同じように決め打ちに変更。
/includes/templates/theme228/templates/tpl_checkout_shipping_default.php

12.カートを空にしたときエラーが発生する
1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SQL_SHOW_SHOPPING_CART_EMPTY' at line 1
in:
[SQL_SHOW_SHOPPING_CART_EMPTY]

定数や変数の未定義による。
/includes/templates/theme228/templates/tpl_shopping_cart_default.php
定数や変数参照部分をコメントアウトする。