永丰金流收款 API 在目前我们从文件看到的,支援信用卡付款及虚拟帐号 ATM 付款。信用卡付款方式在前几天的文章已经完成了。今天,笔者要介绍的即是另一种付款方式 - 「虚拟帐号付款」。
在 Day 20 「定义信用卡付款闸道」这篇文章已经提过,再重覆一次说明,方便从 Google 搜寻进来的朋友们参考。
WooCommerce 有定义好它自己的付款闸道,称为 Payment Gateway API,任何付款方式都是透过此 API 进行功能实作。
以下连结是开发前可以先服用的良方,请先服用帮助消化喔 ^^"
WooCommerce 外挂本身带上了几个内建的付款方式,也是很不错的参考范例,位置在这个目录:
plugins\woocommerce\includes\gateways
像是银行转帐 (direct bank transfer)、货到付款 (COD, cash on delivery)、支票 (cheque)、PayPal 等等。
图 26-1: WooCommerce 外挂的目录 - geteways
读者们可以直接复制其中一个付款方式进行修改,或者打开档案参考写法,会比较快上手喔!
基於官方的范例,建立了一个 Class 名为 WC_SinoPac_Virtual_Account_Payment 的类别,继承 Payment Gateway API 的 WC_Payment_Gateway。
图 26-2: 虚拟帐号付款闸道
第 8 行 这个 id 值非常重要,它会是以後我们读取订单,判断订单付款方式的依据。在 Day 20 建立信用卡付款闸道时,其 id 值为 sinopac-cc
,这里延续相同的前辍 sinopac,定义为 sinopac-va
。
第 11 行 在设定付款的页面时显示的标题。
第 12 行 在设定付款的页面时显示的介绍文字。
第 24 行 设定选项设定。
第 25 行 初始化设定。
第 68 行 Payment Gateway 用来处理付款时的逻辑。
图 26-3: SinoPac_Payment controller
第 6-19 行 稍微修改了一下 load_payment_class,让我们的虚拟帐号付款闸道能够被引入。
第 31 行 注册我们的虚拟帐号付款闸道到付款列表中。
复制之前定义好的 settings-cc-payment.php,命名为 settings-va-payment.php。
图 26-4: settings-va-payment.php
目前档案内容相同,但是使用不同设档案的主要考量点是它们的付款逻辑不一样,以後会有扩充功能的需求情境时,会新增的设定值栏位也会不同,避免互相影响,所比一开始就分成两个不同的档案载入。
有一点小修改的的方在 enabled
、title
、description
、order_button_text
四个选项,在预设的描述有些许不同,其它的设定选项和信用卡付款闸道一样。
图 26-5: 付款方式设定
已经可以在付款方式的列表看到虚拟帐号付款方式可以启用罗。
图 26-2 的第 55-69 行使用虚拟帐号付款方式的实作还没开始写,因此还没办法完成整个流程。在明天的文章中,把这个实作的程序码写进去,就可以开始使用虚拟帐号付款了。我们明天见罗。
>>: DAY 28 Big Data 5Vs – Value(价值) – QuickSight(2)
前言: PHP(Hypertext Preprocessor)作为网页开发的先驱,可是不知道是因为...
绑定的资料和画面上的元素不相等 enter()函式—没放入元素的资料 先看以下程序码 <bod...
KunMinX - Jetpack-MVVM-Best-Practice KunMinX 开源的 J...
引述自100Days of Swift-Class inheritance: The second ...
大家好! 今天只会简单介绍原型的继承关系,当我们介绍完原型链後,就会详细说明继承的方法。 我们出发吧...