ecshop之收货地址改为手工输入
2016-07-07 16:06 来源:www.chinab4c.com 作者:ecshop专家
ecshop之收货地址改为手工输入 做外贸的网站,已经导入了世界国家、地区列表。但是此列表不太完善,希望能改为手工输入。 在参考了论坛中的方法后(http://bbs.ecshop.com/viewthread.php?tid=120495),觉得还是不太完美,需要修改多个文件的代码、数据表结构,修改的内容挺多。 后来找到另一个方法,感觉如果能实现,应该会比较完美如下: 很多客户在做ecshop二次开发的时候要求把ecshop的收货地址改为手工输入的,因为他们也不清楚客户属于哪个地方,还不如让客户自己输入呢。下面就讲下收货地址改为手工输入的具体实现,特别适合做国外客户的网店。 首先说下思想 用户输入的时候,如果该省市已经存在则查询出region_id,如果没有存在则插入数据库中,然后取得新数据的region_id。 为什么要这么做呢,因为ecshop本身的收货地址是下拉框形式,展现的是名字,但是数据传输和存储的是id,所以如果简单的改变下拉框的表现形式为输入框,会导致后面的购物流程里显示不出来区域名字。当然,你也可以修改数据传输和存储,但是太麻烦了,既要改数据表又要大量改代码。 我们目前的方法有几个好处 1,不需要大量改代码 很多人不清楚到底有多少流程会用到这个区域信息,所以大量改的话,一个是工程量大,一个是容易出现遗漏。 2,管理员可以在后台继续方便的管理区域。 接下来说下具体实现: 拿最新版本的ecshop来说,大概在flow.php里的296行,找到 elseif ($_REQUEST['step'] == 'c**ignee')这样一段代码 这里面是处理收货人信息的,找到380行,有几行注释说明 保存收货人信息 加入如下代码 看到没,主题思想是这样的,原来的流程是直接取得区域id,然后继续往下走,目前我们在把前台下拉框改为输入框后,取得输入的区域名,我们只需要把名称改为id,即可省去很多事。做法就是查询数据库,看看该区域是否存在,如果存在取得id,如果不存在就插入数据库然后取得id。 至此ecshop的收货地址改为手工输入的功能算是做好了 原帖地址:http://www.ecshopdev.com/article-443.html |
回答:
收藏下。。。好贴。。。 |
有人用上述方法实现过吗? |
最近更新
常用插件
- ecshop订单聚合插件
ecshop订单聚合插件,主要是为了方便ecshop中订单产品到货情况的分析和...
- ecshop虚拟发货插件
ecshop虚拟发货插件介绍: ecshop虚拟发货插件,主要为了通过后台手动录...
- ecshop的oss插件
ecshop的oss插件免费共享了,oss,ecshoposs...
- ecshop没登陆情况下订单查
ecshop没登陆情况下订单查询插件,主要是针对ecshop在没有登陆的情况下...
- ecshop注册审核插件
ecshop插件介绍:ecshop会员注册审核插件,主要是在前台提供给注册的时候...
ecshop热门问答
ecshop热门资料
ecshop脱机
ecshop物流跟踪
ecshop衣裙
ecshop币种
ecshop注册码
ecshop仿京东分类
支付方式
ecshop如果我是
ecshop无法打开站点
dedecms修改密码
ecshop白菜价
ecshop如何
ecshop灾难
ecshop随机
ecshopadmin
ecshop私密用品
ecshop路径
ecshop莫名奇妙
ecmall系统参数
ecshoplogin
ecshop码字
ecshop模板绑定!
ecshopPink
ecshop悬浮
ecshophotmail
ecshop缩略
ecshop网站商注册
ecshop检查
ecshopXMPP
ecshop父级ID