如何开发ecshop支付插件

简介: 如何开发ecshop支付插件 ecshop模板网 / 2014-06-03 目标一:搞懂ecshop的支付流程 选完商品,进入购物车页面,点击“结算中心”,页面跳转到flow.php?step=checkout,这个是订单确认操作。

如何开发ecshop支付插件

ecshop模板网 / 2014-06-03

目标一:搞懂ecshop的支付流程

选完商品,进入购物车页面,点击“结算中心”,页面跳转到flow.php?step=checkout,这个是订单确认操作。

在订单确认页面确定了支付方式,配送方式等可选择的信息之后,点击“提交订单”按钮,提交表单到flow.php?step=done生成订单。

flow.php?step=done这个操作中,跟支付有关的操作是生成支付代码。如下所示:

 

    /* 取得支付信息,生成支付代码,在线支付代码*/

    if ($order['order_amount'] > 0)

    {

        $payment = payment_info($order['pay_id']);

//print_r($payment);exit;

        include_once('includes/modules/payment/' . $payment['pay_code'] . '.php');

        $pay_obj = new $payment['pay_code'];

         $pay_online=$pay_obj->get_code($order,unserialize_config($payment['pay_config']));

//print_r(unserialize_config($payment['pay_config']));exit;

        $order['pay_desc'] = $payment['pay_desc'];

        $smarty->assign('pay_online', $pay_online);

    }

 

通过支付方式的id通过函数payment_info()获取到支付方式的信息,在通过支付方式的pay_code包含对应的支付模块。

Ecshop把每一种支付方式都封装成一个类,比如支付宝支付方式,对应的文件是

includes\modules\payment\alipay.php,这个文件里面封装了类是alipay,这个类有两个方法,一个是生成支付代码的get_code(),根据不同支付接口所需的参数进行配置,然后生成一个字符串,这个字符串就是支付代码;另外一个是响应操作respond()。其中,接收响应的页面都是通过return_url(basename(__FILE__, '.php'))函数指定的,生成的链接是respond.php?code=,其中code后面的参数就是根据不同的支付方式而不同。Respond.php则根据不同的第三方支付返回的信息进行处理。

  

目标二:开发支付插件(为了便于讲解,再次开发ecshop自带的支付宝接口alipay,我们改名为alipay_test)

搞清楚支付的基本流程,尝试开发支付插件。假如要开发一个alipay_test.php插件。

首先,在语言包里面languages\zh_cn\payment新建一个alipay_test.php文件(这里复制alipay.php),然后修改里面的$LANG的下标,都加上_test,$_LANG['pay_button']可以不修改;

然后,在支付模块includes\modules\payment里面新建一个alipay_test.php,修改模块的基本信息跟语言包,封装一个类alipay_test,并且实现两个方法get_code()和respond();

最后登录后台查看支付方式。

目录
相关文章
thinkphp6.0 集成Alipay 手机和电脑端支付的方法
第一步   下载 Alipay 的PHP SDK :https://docs.open.alipay.com/54/103419/ 第二步   解压下载都到的压缩包:   解压后得到的文件内容如图    第三步、上传得到的目录中的 aop 文件夹到 thinkphp 6.
6170 0
|
6天前
|
PHP
20241125易支付PHP网站源码
PHP74,上传源码后解压访问域名/install 进行安装 安装完成 之后一定要设置伪静态 源码里面nginx.txt 就是伪静态 然后复制粘贴到伪静态里面保存即可
26 2
|
3月前
discuz论坛积分商城插件
第一步:首先利用上传工具FTP,将插件上传至网站空间(相信你会搭建论坛,这步应该不是问题,此处滤过) 第二步:找到source文件夹。双击source,可以看到有许多文件,找到plugin的文件夹。进入plugin文件夹,把我们下载的插件文件夹,上传到网站plugin文件夹内。 第三部;上传成功,现在可以正式进入论坛网站后台,输入账号密码登录。进入论坛后台,我们找到应用-插件栏目并点击 拖拉到网页下面,找到“未安装的插件“。在它下面可以看到我们刚才上传的插件文件名。点击安装 第四步;安装完成,回到刚才装的插件h 点设置之后再hh ‘绑定版块’h 选择你要绑定的积分版块,其余功能自由发挥。
57 13
discuz论坛积分商城插件
|
7月前
|
开发框架 监控 前端开发
多商户商城系统开发步骤功能/稳定版/详细案例/教程需求/源码程序
多商户商城系统开发是一个复杂的过程,涉及多个方面的功能和技术。
|
XML 小程序 JavaScript
nodejs实现微信小程序支付功能及相关问题总结
最近使用nodejs作为服务器,搭建了一个微信小程序。其中的微信支付功能是比较复杂的一部分。不过只要我们能掌握微信支付的工作流程,那实现这个功能也不会很难的。下面分享此次微信支付的实现经历。
|
数据安全/隐私保护
Magento开发有哪些功能呢?
电子商务系统的数据是企业的商业机密。 Magento支持SSL加密传输前台和后台数据并且支持后台权限的分级控制,确保您的数据万无一失。
1727 0
|
SQL 弹性计算 PHP
ecshop后台订单自动确认开发详解
image CREATE TABLE `order_auto_confirm` ( `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `order_id` INT(10) UNSIGNED ...
1269 0
下一篇
无影云桌面