久久久久av_欧美日韩一区二区在线_国产精品三区四区_日韩中字在线

返回列表 發(fā)帖
查看: 317|回復: 7

[X5開發(fā)特性] 在 X5 中拓展自己的支付

73

主題

243

回帖

591

積分

管理員

貢獻
12 點
金幣
41 個
QQ
樓主
發(fā)表于 2024-10-31 09:34:12 | 只看樓主 |倒序瀏覽 |閱讀模式
一直以來,Discuz! 的站長有一個痛苦,安裝了2個支付相關(guān)的插件,一個支付一個界面,界面極為不統(tǒng)一。


這種問題在 X5 時代徹底終極了。其實相關(guān)接口 X3.5 的時候已經(jīng)出了,只是沒對外公開過文檔,很少有人知道。但是在 X5 中不僅拓展了它,還徹底優(yōu)化加強了。

容我細細道來~~咳咳!

假設我們制作了一個需要用戶支付的插件,現(xiàn)在到了支付的地方,你要自己開發(fā)支付接口嗎?不必哦。你只需要對接 X5 自己的支付接口就行了,如下圖,假設我們定好了價格只需調(diào)用創(chuàng)建訂單的接口,生成一個鏈接,讓用戶點擊


就會調(diào)到統(tǒng)一的系統(tǒng)支付頁面

支付完成后會跳回到插件自己的頁面中


而這流程你只需要調(diào)用一個函數(shù):

  1. $ret = payment::create_order('sample:test', 'test title', 'test desc', $price, $_G['siteurl'].'/index.php?app=plugin&id=sample:pay_callback');
復制代碼
$ret 為返回的鏈接,你視情況輸出即可

然后在 pay_callback.inc.php 腳本中可以直接判斷支付完成后的處理過程

另一方面

如果您想對接自己的支付體系,也是可以的,我們支持開發(fā)者新增新的支付通道

通過如下代碼,創(chuàng)建一個新的通道
  1. payment::channels_add('sample', [
  2.     'id' => 'sample:test',
  3.     'title' => 'sample',
  4.     'logo' => 'static/image/common/logo.svg',
  5.                 ]);
復制代碼
刪除可以這樣
  1. payment::channels_delete('sample');
復制代碼
這樣支付的時候自然會出現(xiàn)你新增的支付方式

pay/pay_test.php 腳本中我們可以定義此支付體系的具體支付過程
  1. class pay_test extends \pay_base {
  2.       public function pay($order) {
  3.       ......
  4.       }
  5. }
復制代碼

在 pay_notify.inc.php 中可以進行支付完成的通知的接收
  1. payment::finish_order('sample:test', $_GET['out_biz_no'], $_GET['trade_no'], time());
復制代碼
在 pay/pay_test.php 中完成回調(diào)處理
  1. class pay_test extends \pay_base {
  2.       public function callback($data, $order) {
  3.       ......
  4.       }
  5. }
復制代碼
同時,我們還為自定義支付通道的插件提供了,直接嵌入后臺的入口,添加 admin/payment/payment_test.php 文件接口把你增加的支付方式的設置內(nèi)嵌在后臺和系統(tǒng)的設置項放在一起


  1. class payment_test {
  2.     var $name = 'test支付';
  3.     public function admincp() {
  4.     }
  5. }
復制代碼



本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有賬號?立即注冊

×
回復

使用道具 舉報

39

主題

2866

回帖

4910

積分

應用開發(fā)者

Discuz! 運維

貢獻
181 點
金幣
661 個
QQ
沙發(fā)
發(fā)表于 2024-10-31 09:38:53 | 只看Ta
沙發(fā)位已占
回復

使用道具 舉報

1

主題

96

回帖

129

積分

應用開發(fā)者

貢獻
0 點
金幣
27 個
板凳
發(fā)表于 2024-10-31 09:39:02 | 只看Ta
沙發(fā)占了
回復

使用道具 舉報

10

主題

272

回帖

534

積分

應用開發(fā)者

貢獻
5 點
金幣
168 個
QQ
地板
發(fā)表于 2024-10-31 09:40:20 | 只看Ta
回復

使用道具 舉報

28

主題

5574

回帖

1萬

積分

應用開發(fā)者

貢獻
596 點
金幣
1442 個
QQ
5#
發(fā)表于 2024-10-31 11:59:46 | 只看Ta
前排占位,其實支付這部分的對接,X3.5就支持,大家在X3.5就可以這么做了
回復

使用道具 舉報

39

主題

2866

回帖

4910

積分

應用開發(fā)者

Discuz! 運維

貢獻
181 點
金幣
661 個
QQ
6#
發(fā)表于 2024-11-1 10:27:17 | 只看Ta
湖中沉 發(fā)表于 2024-10-31 11:59
前排占位,其實支付這部分的對接,X3.5就支持,大家在X3.5就可以這么做了

稍微有點點差別
回復

使用道具 舉報

28

主題

5574

回帖

1萬

積分

應用開發(fā)者

貢獻
596 點
金幣
1442 個
QQ
7#
發(fā)表于 2024-11-1 14:06:42 | 只看Ta

基本一致,創(chuàng)建訂單,回調(diào),這些基礎該有的都有
回復

使用道具 舉報

73

主題

243

回帖

591

積分

管理員

貢獻
12 點
金幣
41 個
QQ
8#
 樓主| 發(fā)表于 2024-11-1 14:40:53 | 只看Ta
湖中沉 發(fā)表于 2024-11-1 14:06
基本一致,創(chuàng)建訂單,回調(diào),這些基礎該有的都有

本不想改的,但發(fā)現(xiàn)不改別扭,不統(tǒng)一。何況想加點東西
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

  • 關(guān)注公眾號
  • 有償服務微信
  • 有償服務QQ

手機版|小黑屋|Discuz! 官方交流社區(qū) ( 皖I(lǐng)CP備16010102號 |皖公網(wǎng)安備34010302002376號 )|網(wǎng)站地圖|star

GMT+8, 2025-7-1 16:26 , Processed in 0.057839 second(s), 11 queries , Redis On.

Powered by Discuz! W1.0 Licensed

Cpoyright © 2001-2025 Discuz! Team.

關(guān)燈 在本版發(fā)帖
有償服務QQ
有償服務微信
返回頂部
快速回復 返回頂部 返回列表