zen cart

[zen-cart] 商品説明を書いた通りに改行を入れる方法

zen cartの商品個別説明のところに管理画面から商品説明を書いた時に改行を入れても改行は反映されないです。

以下のように変更をくわえると解消されます。
includes/templates/(使用しているテンプレート名)/templates/tpl_product_info_display.php
の242行目辺り
<?php if ($products_description != '') { ?>

<?php if ($products_description != '') {
$products_description = str_replace("¥r¥n", "<br />", $products_description);
?>

に変更。

※全角¥の部分は半角に直してください。正確には\がは入ります。

[zen cart] 商品登録画面の提供可能日hack

09
18
2006

zen cartの管理画面、自分の環境では商品登録画面の提供可能日をカレンダーから指定しても登録後うまく反映されないので反映されるようにするための方法。

admin/includes/modules/update_product.phpの28行目

$products_date_available = (date('Y-m-d') < $products_date_available) ?
$products_date_available : 'null';

をコメントアウト。

[zen cart] テンプレートのカスタマイズ

zen cartを使用したオンラインショップにオリジナルのテンプレートを作成したり元からあるテンプレートの一部を改造したい場合など、元からあるテンプレートはそのままにしておいた方が失敗した時など便利です。

まず、includes/templatesの中に新しいディレクトリ(フォルダ。以下ディレクトリ)を作成します(例:custom。以下このディレクトリを「custom」ディレクトリと呼びます。)。ディレクトリ名は半角英語でスペース無しで作成した方がいいでしょう。

次にこのディレクトリの中に改造したいファイルを置くディレクトリを作成します。ディレクトリ名は「template_default」ディレクトリの中のディレクトリ名と同じ名前にします。

例えば、スタイルシートを適用させたい場合なら「css」ディレクトリに入っている「stylesheet.css」がスタイルシートファイルなので、
「custom」ディレクトリの中に「css」ディレクトリを作成し、その中に「stylesheet.css」を置きます。

このように変更したいファイルだけを作成していきます。ファイルの置き場所は「template_default」ディレクトリを参考にするといいでしょう。

次に、管理画面のメニューにある「追加設定・ツール」から「テンプレートの設定」を選び、先ほど作成した「custom」があると思いますのでそれを選択し、更新ボタンを押してください。

このように変更したいファイルだけを作成し適用させる方法をzen cartではover rideと呼びます。

over ride機能は「languages」でも同じように機能します。

[zen cart] カテゴリボックスの商品数表示設定

09
18
2006

zen cartは高機能ゆえに設定メニューの項目もかなり多くてどこに何があるのか分からなくなりがちです。

zen cartのカテゴリボックスの商品数表示設定は管理画面の「レイアウト設定」のところでなく何故か「ショップ全般の設定」の真ん中らへんにあります。

[zen cart] 商品画像追加

09
18
2006

zen cartコミュニティ掲示板より。

zen cartの商品ページでメインで使用したい画像ファイル名をhoge.jpgとした場合、追加表示したい画像ファイル名はhoge_01.jpg、hoge_02.jpgと言う感じにしてやり、商品登録画面で画像の回数分「商品画像」のところに商品画像を登録していきます。

この時、いったん「プレビュー」ボタンを押さないとファイルはアップロードされません。

そして、メインで使用したい画像は一番最後にアップロードします。これはデータベースに商品画像として登録されるのが1ファイルのみだからで、実際の商品ページで画像が表示されるのはページを表示する時に画像ファイル名と同じ名前のファイルをディレクトリから自動的に探すような仕組みになっているからです。

逆に言うと別の商品の画像ファイル名をhoge_01.jpgと言う感じにしてしまうと同じ商品の写真と判断されて表示されてしまいます。