[Tep-j-general] Re: 在庫がなくなった場合の表示

Back to archive index

osc_298 osc_829****@hotma*****
2005年 9月 2日 (金) 16:38:25 JST


自分のメモ書きから。

1.在庫が0になっても一覧から削除しない

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

catalog/checkout_process.php
165行目付近

以下のような記述を探します。日本語版のDefaultでは159行目から161行目です。
// do not decrement quantities if products_attributes_filename exists
        if ((DOWNLOAD_ENABLED != 'true') || 
(!$stock_values['products_attributes_filename'])) {
          $stock_left = $stock_values['products_quantity'] - 
$order->products[$i]['qty'];
        } else {
          $stock_left = $stock_values['products_quantity'];
        }
        tep_db_query("update " . TABLE_PRODUCTS . " set products_quantity = 
'" . $stock_left . "' 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']) . 
"'");
        }
      }
    }

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


2.一覧上で、その商品が在庫切れであることを表示する

/catalog/product_info.php 
147行目付近

変更前
 <td align="right" class="main"><?php echo 
tep_draw_hidden_field('products_id', $product_info['products_id']) . 
tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_IN_CART); ?></td>

変更後
<?php if ($product_info['products_quantity'] == 0) {
           echo tep_image_button('button_soldout.gif', 
IMAGE_BUTTON_SOLDOUT);
           } else {
           echo tep_draw_hidden_field('products_id', 
$product_info['products_id']) . tep_image_submit('button_in_cart.gif', 
IMAGE_BUTTON_IN_CART);
           }
           ?>


多分大丈夫だと思います。

button_soldout.gif は別途作成

 IMAGE_BUTTON_SOLDOUTは、 japanese.phpに追加
define('IMAGE_BUTTON_SOLDOUT', '在庫切れ');





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