Ecshop 商品页配送方式添加 实现仿淘宝按地区显示运费

Ecshop实现仿淘宝按地区显示运费

淘宝网(Taobao)购物的宝贝详情页面,可以针对不同地区显示不同运费,运费由后台设定;结算时间,按重量、件数计算运费。Ecshop本身有配送方式插件,已有多家物流公司插件,例如:顺丰快递、申通快递、圆通快递等。本文介绍如何实现按地区显示运费,并且让每个商品绑定运费模板。

     1、Ecshop后台配送方式创建

进入Ecshop后台"系统设置-->配送方式",将“顺丰快递”改名称为“粮食快递”,配送ID号为6。

134700_6zWt_102350

134711_8Cck_102350

     2、商品绑定配送方式的运费模板

       2.1 数据表“ecs_goods”增加一个字段,执行下面SQL语句:

 

 

2.2 后台添加/编辑 商品 调出已经安装配送方式 "admin/ goods.php ",将此shipping_list函数添加到goods.php最末处。

 

在代码前“$smarty->assign('unit_list', get_unit_list());”增加调用代码

在“/* 处理商品数据 */”后面,增加POST过来的“shipping_id ”表单值进行赋值

最后一步是“插入/更新”商品时,对“shipping_id”字段实现处理。直接替换掉下面代码

 

      2.3 后台添加/编辑商品 实现绑定配送方式"admin/goods_info.htm"

 

 

在品牌下面,增加绑定运费模板。效果如下:
140733_9UdA_102350

      3、前台商品详情调用设置好的配送方式

以主题default为例,增加新文件:
1、chrome.js (themes/default/js)
2、icon_2.jpg (themes/default/images)相关文件下载

goods.php页面商品显示部分加入调用代码

goods.dwt  加在需要显示运费的地方,根据自己需要调整。

 

前台显示最终效果图,默认广东省

145650_qIIu_102350

     4、结算流程中,根据配送地址计算运费

        4.1 重写“include/lib_order.php”中last_shipping_and_payment函数。多个商品,不同配送方式,调用配送方式ID,以最贵配送方式计算。买家可以找客服进行,运费改价。

 

4.2  flow.php购物流程checkout,done步骤,调用商品绑定的配送方式

将themes/default/flow.dwt配送方式隐藏掉

 

 5、经过上面多处增加/修改,测试一下运行效果。

广东  首重10KG 7元,续重0.7元/KG

151412_s5oe_102350

151421_skLj_102350

152034_kZzk_102350

152151_vbBQ_102350

原文地址:http://blog.uuecs.com/archives/ecshop-achieve-imitation-taobao-freight-by-region.html

posted @ 2015-07-08 14:04  小镇男子  阅读(3116)  评论(0编辑  收藏  举报