经常遇到这个问题,当我们使用第三方支付工具Gateway如paypal支付的时候,如果用户付款不成功或者取消了订单再返回网站时,发现购物车里面的产品已经被清空了,如果是客户主动cancel的还好,但是如果是操作失误的原因而未能付款,客户会非常抓狂。

通过下面这个方法可以解决这个问题,Magento通常的方法是如果判定为第三方的gateway 作为支付工具的话直接save quote
$this->getOnepage()->getQuote()->save();
我们的应对方法是,判定如果页面转向第三方支付gateway 如 paypal则不保存 quote,这样就不会清空shopping cart
app/code/core/Mage/Checkout/controllers/OnepageController.php 
找到这段代码
$this->getOnepage()->getQuote()->save();
       
        if (isset($redirectUrl)) {
            $result['redirect'] = $redirectUrl;
        }

 
改成
//$this->getOnepage()->getQuote()->save();
       
        if (isset($redirectUrl)) {
            $result['redirect'] = $redirectUrl;
        }
        else {
            $this->getOnepage()->getQuote()->save();
        }

替换原来的文件即可

转载于:https://www.cnblogs.com/focai/p/4347293.html

Magento:Paypal付款不成功返回后不要清空购物车产品的解决方案相关推荐

  1. magento paypal付款实现前台切换货币付款

    2019独角兽企业重金招聘Python工程师标准>>> magento默认的付款机制是不管前台切换什么货币付款,跳转到paypal付款界面时,都会是以基货币来付款的 需要修改几个文件 ...

  2. 【magento2】订单成功支付后重定向到购物车

    问题描述 最近几天运营发现有客户支付完订单之后直接跳转到了/checkout/cart/,通过进一步测试锁定只有非注册用户能够重现该bug.进一步查看得知是从/checkout/cart/重定向到/c ...

  3. ecshop订单总价币种汇率转换paypal付款

    简介: ecshop订单总价价格汇率结算,后台设置币种转换,在购物车结算页面显示订单应付总价和显示汇率转换后的总价,paypal付款按汇率转换后实际付款币种付款,支持pc端和手机端. 当前商城默认价格 ...

  4. ajax返回的数据有问题,ajax请求成功返回数据,转成数组后,for遍历取不到值的有关问题...

    当前位置:我的异常网» Ajax » ajax请求成功返回数据,转成数组后,for遍历取不到 ajax请求成功返回数据,转成数组后,for遍历取不到值的有关问题 www.myexceptions.ne ...

  5. 写在ICDsoft购买和Paypal付款之后

    上次连续写了两篇日志:用银联借记卡通过paypal支付美金和ICDsoft主机半价优惠码推荐,本想这样就全部结束了,但事情还是没完.下午四点购买了ICDsoft的主机后,安装ShopEx的时候出现问题 ...

  6. magento|paypal快速结账和结账页开发疑难

    magento集成的有PayPal支付,我们一般采用的是PayPal快速结账支付方法,不仅可以在产品详情页实现快速结账,同时可以在结账页使用此种方式.不过这里遇到几个问题,具体罗列和分析如下: 1.详 ...

  7. 终于研究出如何设置新版paypal付款时汇率损失方的问题了

    http://bbs.55haitao.com/thread-1686005-1-1.html 终于研究出如何设置新版paypal付款时汇率损失方的问题了 登录paypal后,选"设置&qu ...

  8. paypal付款,PayPal Subscribe和PayPal Check Out的区别

    又到了VPS续费的时候了,应该有不少朋友和VPS小学生一样收到IDC发来的续费邮件,在点击邮件中的续费链接后,右上角的paypal有两个选项PayPal Subscribe和PayPal Check ...

  9. c# api返回后执行代码_API错误代码是历史记录-请尝试执行此操作

    c# api返回后执行代码 一个警示故事 (A cautionary tale) Once upon a time, a young girl observed her mother, who was ...

最新文章

  1. 自动化测试测试工具 AirTest 的使用方法与简介
  2. 13 个mod_rewrite 应用举例
  3. 当薪资倒挂成为常态,然后呢?
  4. 基于Linux 的VM TOOLS Install
  5. c++中结构体字符指针成员无法赋值
  6. 张秋余---经典语录
  7. mysql 走索引 很慢_MySQL优化:为什么SQL走索引还那么慢?
  8. fis3+vue+pdf.js制作预览PDF文件或其他
  9. 1000道Python题库系列分享24(41个客观题,numpy专题)
  10. 50张图片做出李飞飞数万张的效果,类脑AI竟然这样玩?
  11. [转载] 柯受良-柯受良飞跃黄河
  12. [郝斌/王卓]数据结构C语句—链表
  13. OPPO R9sPlus MIFlash线刷TWRP Recovery ROOT详细教程
  14. 关于SNIP NTRIP Caster学习笔记
  15. 数据结构银行排队系统c语言,数据结构银行排队系统实验报告
  16. EV: 致新教育萤火虫父母们
  17. 2021全国特种设备-Q2起重机司机模拟考试题库一[安考星]
  18. 海底光缆是如何铺设出来的?
  19. html 页面自动滚动,打开网页后屏幕自动滚动代码
  20. 【darknet】1、yolov4模型训练之数据处理

热门文章

  1. Spark RDD Transformation
  2. neo4j union
  3. freecplus框架-日志文件操作
  4. mysql中值换行显示为乱码_MySQL数据移植中的乱码问题
  5. 使用 ESXCLI 命令从主机移除设备
  6. Exchange Server 2016 独立部署/共存部署 (三)—— 安装Exchange程序
  7. 华为云回应“关闭私有云”传闻 将进行业务调整形成混合云产品部
  8. Linux学习总结(76)—— Shell 脚本日志技巧
  9. Docker学习总结(55)——Google和Facebook为什么不用Docker?
  10. 分库分表学习总结(4)——分布式事务常见应用场景总结