ECSHOP二次開發--給商品增加一個新欄位
在ECSHOP二次開發工作中,經常碰到一些ECSHOP高階使用者問我,如何給商品增加一個新欄位,來錄入一些新的內容。
下面我們結合ecshop後臺“商品編輯”、“商品錄入”來談談如何給ecshop商品增加一個新欄位,假設我們將這個新欄位命名為 other_col
1、首先要修改資料表結構,給表 ecs_goods 增加新欄位:other_col,
進入ECSHOP後臺 》資料庫管理 》SQL查詢,輸入下面SQL語句,提交。注意如果你的資料表字首不是ecs_ 請自行修改之
alter table ecs_goods add column other_col varchar(64);
2、在ecshop後臺的admin\templates\goods_info.htm中增加以下程式碼.
<tr>
<td class="label">自定義欄位</td>
<td><input type="text" name="other_col" value="{$goods.other_col}" size="20"/>
</td>
</tr>
3、在admin/goods.php的elseif ($_REQUEST['act'] == 'insert' || $_REQUEST['act'] == 'update')裡面增加以下程式
$sql = "INSERT INTO " . $ecs->table('goods') . " (goods_name, goods_name_style, goods_sn, " .
"cat_id, brand_id, shop_price, market_price, is_promote, promote_price, " .
"promote_start_date, promote_end_date, goods_img, goods_thumb, original_img, keywords, goods_brief, " .
"seller_note, goods_weight, goods_number, warn_number, integral, give_integral, is_best, is_new, is_hot, " .
"is_on_sale, is_alone_sale, is_shipping, goods_desc, add_time, last_update, goods_type, rank_integral, suppliers_id,other_col)" .
"VALUES ('$_POST[goods_name]', '$goods_name_style', '$goods_sn', '$catgory_id', " .
"'$brand_id', '$shop_price', '$market_price', '$is_promote','$promote_price', ".
"'$promote_start_date', '$promote_end_date', '$goods_img', '$goods_thumb', '$original_img', ".
"'$_POST[keywords]', '$_POST[goods_brief]', '$_POST[seller_note]', '$goods_weight', '$goods_number',".
" '$warn_number', '$_POST[integral]', '$give_integral', '$is_best', '$is_new', '$is_hot', '$is_on_sale', '$is_alone_sale', $is_shipping, ".
" '$_POST[goods_desc]', '" . gmtime() . "', '". gmtime() ."', '$goods_type', '$rank_integral', '$suppliers_id','$_POST[other_col]')";
。。。。。。。。
。。。。。。。。
" other_col = '$_POST[other_col]', " .
這樣我們就完成了在ECSHOP後臺錄入和修改新欄位的功能了。
下面再來說一下前臺呼叫的方法:
呼叫也很簡單,直接在模板檔案或者 lbi檔案裡 這麼呼叫即可 {$goods.other_col}