开启ecshop一件购买功能

本文详细介绍了如何在Ecshop后台开启一步购物功能,并在此基础上增加直接购买按钮,使得用户能够在不使用购物车的情况下直接进行商品购买。通过修改JS函数和flow.php文件,成功实现了购物车和直接购买功能共存,提供了更灵活的商品购买体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

开启ecshop一件购买功能

接触EC不久,也慢慢学习ecshop二次开发,为了实现商品直接购买功能。去百度搜索了很多资料。不过大多不能用或者不全!后来总算找到个靠谱的,才知道原来ecshop后台中有自带一步购物功能。但开启后,就无法使用购物车功能。我在那篇教程的基础上再加上自己的修改,终于完美实现了ecshop直接购买与购物车并存的功能。这里就跟大家详细讲解下:

  1. ecshop也就是你网站的后台开启一步购物

2.      增加直接购买的按钮。

temp/default/goods.dwt下找到<li class="padd">

      <ahref="javascript:bool=0;addToCart({$goods.goods_id})"><imgsrc="images/bnt_cat.gif" /></a>

      <a href="javascript:collect({$goods.goods_id})"><imgsrc="images/bnt_colles.gif" /></a>

 

大概在390行的位置.然后在下面增加你的button代码:

 

     <ahref="javascript:bool=1;addToCart({$goods.goods_id})"><imgsrc="images/bnt_buy_1.gif" alt="直接购买"/></a>

 

其中bool=1是用来判断用户点的是购物车还是直接购买。

 

  1. 修改点击按钮时负责处理的js函数addToCart.

打开js/common.js,在开头定义变量var bool=0.然后找到

 Ajax.call('flow.php?step=add_to_cart',&goods=' + goods.toJSONString(), addToCartResponse, 'POST', 'JSON');

修改为

Ajax.call('flow.php?step=add_to_cart', 'bool='+bool+'&goods=' +goods.toJSONString(), addToCartResponse, 'POST', 'JSON');

即向flow.php中传入bool变量。

 

  1. 修改flow.php

flow.phpif($_CFG['one_step_buy'] == '1')全改为if(bool==1)这样就实现了当在后台开启一步购物也能通过bool变量区分购物车和一步购物。

  1. 修改addToCartResponse.

回到common.js。找到var cart_url ='flow.php?step=cart';下面增加    

if(bool == 1)

     cart_url= 'flow.php?step=checkout';

这样就实现了点击直接购买就跳过购物车页面直接进入商品确认页面。

OK ,功能完成。

转载于:https://my.oschina.net/u/779687/blog/136926

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值