首页 » 二次开发 » 阅读文章
ecshop商品属性功能强大,有很强的灵活性
特别是可选属性,利用的好可以实现多种常见促销策略。比如选购商品相关配件、加N元换购、多组商品任意组合价格相同(如两组商品中分别任选一件组合价99元,详见http://bbs.ecshop.com/viewthread.php?tid=96310&page=1#pid480851)等。
下面介绍为可选属性添加图片的功能,比如一款商品有黑色和白色款,在颜色相关选项处放上实物照片,供用户选择参考;又如一款商品相关配件,放上图片供参考。
无图无真相,贴图如下仅供参考:
数据库中为商品属性表添加一个字段,SQL语句为:
1 |
ALTER TABLE `ecs_goods_attr` ADD COLUMN `thumb` VARCHAR (255) NOT NULL AFTER `attr_price`; |
/admin/includes/lib_goods.php
函数 get_attr_list 中SQL语句查询处添加v.thumb(行535附近)
也就是将
1 |
$sql = "SELECT a.attr_id, a.attr_name, a.attr_input_type, a.attr_type, a.attr_values, |
2 |
v.attr_value, v.attr_price " |
改为
1 |
$sql = "SELECT a.attr_id, a.attr_name, a.attr_input_type, a.attr_type, a.attr_values, |
2 |
v.attr_value, v.attr_price, v.thumb " |
函数 build_attr_html 最后(行601附近)
1 |
$html .= ( $val [ 'attr_type' ] == 1 || $val [ 'attr_type' ] == 2) ? |
2 |
$GLOBALS [ '_LANG' ][ 'spec_price' ]. ' <input type="text" name="attr_price_list[]" value="' . $val [ 'attr_price' ] . '" size="5" maxlength="10" />' : |
3 |
'<input type="hidden" name="attr_price_list[]" value="0" />' ; |
改为:
1 |
$html .= ( $val [ 'attr_type' ] == 1 || $val [ 'attr_type' ] == 2) ? |
2 |
$GLOBALS [ '_LANG' ][ 'spec_price' ]. ' <input type="text" name="attr_price_list[]" value="' . $val [ 'attr_price' ] . '" size="5" maxlength="10" /> thumb_url <input type="text" name="thumb_list[]" value="' . $val [ 'thumb' ] . '" size="20" />' : |
3 |
'<input type="hidden" name="thumb_list[]" value="" /><input type="hidden" name="attr_price_list[]" value="0" />' ; |
/admin/goods.php
(行940附近)
1 |
$attr_price = $_POST [ 'attr_price_list' ][ $key ]; |
处相应添加
1 |
$thumb = $_POST [ 'thumb_list' ][ $key ]; |
搜索此文档中所有 attr_price ,相应添加 thumb 项
/includes/lib_goods.php
函数 get_goods_properties 中加入thumb信息
SQL中加入g.thumb(行653附近)
返回数组中(行653附近)相应增加一行
1 |
'thumb' => $row [ 'thumb' ], |
剩下的就是模板的事了,循环{$specification}中的值,对照属性加价使用的变量(或标签)相应的使用{$value.thumb}来调用。
要进一步完善,还可相应增加网址字段,这样就可以查看相关属性更详细的信息和更清晰的图片。
评论 共0条 (RSS 2.0) 发表评论