[Tep-j-general] SOLD OUT の表示について

Back to archive index

tamura_kei****@yahoo***** tamura_kei****@yahoo*****
2003年 7月 4日 (金) 08:04:48 JST


To:しりうすさん
From:田村啓

私が行った変更を2つご紹介いたします。おそらく、ご要望を満たすと思います。

1:在庫が0の時に、購入ボタンを表示しない方法

/catalog/product_info.php にて

以下のような記述を探します。日本語版のDefaultでは165行目あたりにあります。
echo tep_draw_hidden_field('products_id', $product_info['products_id']) .
tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_IN_CART); 

// 変更後
if ($product_info['products_quantity'] > 0) :
  echo tep_draw_hidden_field('products_id', $product_info['products_id']) .
  tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_IN_CART); 
endif;
// 変更後

カテゴリの商品一覧画面で、「すぐに購入」ボタンを表示する/しないはadmin>
基本設定>[今すぐ購入]欄の表示の設定を変更することでで選択できると思います。


2:在庫が0になっても自動的にstatus=0にならないようにする

また、admin>基本設定>在庫管理 の設定を変更しても、在庫が0になると自動的
に、products のstatusが0になってしまい、表示されなくなります。在庫が0に
なるたびに緑のボタンを押すというのも面倒なので、これも変更する方が良いで
す。

catalog/checkout_process.php

以下のような記述を探します。日本語版のDefaultでは159行目から161行目です。
if ($stock_left < 1) {
  tep_db_query("update " . TABLE_PRODUCTS . " set products_status = '0'
where products_id = '" . tep_get_prid($order->products[$i]['id']) .
"'");
}

これをすべてコメントアウトします。
//        if ($stock_left < 1) {
//          tep_db_query("update " . TABLE_PRODUCTS . " set
products_status = '0' where products_id = '" .
tep_get_prid($order->products[$i]['id']) . "'");
//        }

当然のことですが、変更は必ずバックアップを取った後に行ってください。トラ
ブル等が起こっても自己責任でお願いします。


──────────
田村 啓
tamura_kei****@yahoo*****

__________________________________________________
Do You Yahoo!?
Yahoo! BB is Broadband by Yahoo!
http://bb.yahoo.co.jp/




Tep-j-general メーリングリストの案内
Back to archive index