香蕉成人伊视频在线观看|学生小视频国产区|yy女主播啪啪啪视频|麻豆传播媒体APP大全免费版官网|瑜伽牲交AV|国产欧美日韩在线天堂区|白浆精品国产91

返回列表 發帖
查看: 1660|回復: 7

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

98

主題

668

回帖

27

粉絲

管理員

貢獻
31 點
金幣
75 個
產品版本
X5.0+
樓主
發表于 2024-10-31 09:34:12 |北京| 只看樓主 |倒序瀏覽 |閱讀模式
一直以來,Discuz! 的站長有一個痛苦,安裝了2個支付相關的插件,一個支付一個界面,界面極為不統一。


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

容我細細道來~~咳咳!

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


就會調到統一的系統支付頁面

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


而這流程你只需要調用一個函數:

  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 腳本中可以直接判斷支付完成后的處理過程

另一方面

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

通過如下代碼,創建一個新的通道
  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');
復制代碼
這樣支付的時候自然會出現你新增的支付方式

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 中完成回調處理
  1. class pay_test extends \pay_base {
  2.       public function callback($data, $order) {
  3.       ......
  4.       }
  5. }
復制代碼
同時,我們還為自定義支付通道的插件提供了,直接嵌入后臺的入口,添加 admin/payment/payment_test.php 文件接口把你增加的支付方式的設置內嵌在后臺和系統的設置項放在一起


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



回復

使用道具 舉報

50

主題

3408

回帖

11

粉絲

應用開發者

Discuz! 運維

貢獻
232 點
金幣
685 個
QQ
沙發
發表于 2024-10-31 09:38:53 |江蘇| 只看Ta
沙發位已占
回復

使用道具 舉報

1

主題

96

回帖

3

粉絲

應用開發者

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

使用道具 舉報

10

主題

300

回帖

3

粉絲

應用開發者

貢獻
5 點
金幣
173 個
QQ
地板
發表于 2024-10-31 09:40:20 |四川| 只看Ta
回復

使用道具 舉報

46

主題

6847

回帖

19

粉絲

應用開發者

貢獻
674 點
金幣
1461 個
產品版本
X5.0+
QQ
5#
發表于 2024-10-31 11:59:46 |浙江| 只看Ta
前排占位,其實支付這部分的對接,X3.5就支持,大家在X3.5就可以這么做了
回復

使用道具 舉報

50

主題

3408

回帖

11

粉絲

應用開發者

Discuz! 運維

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

稍微有點點差別
回復

使用道具 舉報

46

主題

6847

回帖

19

粉絲

應用開發者

貢獻
674 點
金幣
1461 個
產品版本
X5.0+
QQ
7#
發表于 2024-11-1 14:06:42 |浙江| 只看Ta

基本一致,創建訂單,回調,這些基礎該有的都有
回復

使用道具 舉報

98

主題

668

回帖

27

粉絲

管理員

貢獻
31 點
金幣
75 個
產品版本
X5.0+
8#
 樓主| 發表于 2024-11-1 14:40:53 |北京| 只看Ta
湖中沉 發表于 2024-11-1 14:06
基本一致,創建訂單,回調,這些基礎該有的都有

本不想改的,但發現不改別扭,不統一。何況想加點東西
回復

使用道具 舉報

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

本版積分規則

  • 關注公眾號
  • 有償服務微信
  • 有償服務QQ

手機版|小黑屋|Discuz! 官方交流社區 ( 皖ICP備16010102號 |皖公網安備34010302002376號 )|網站地圖|star

GMT+8, 2026-5-31 03:57 , Processed in 0.046604 second(s), 12 queries , Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2026 Discuz! Team.

關燈 在本版發帖
有償服務QQ
有償服務微信
返回頂部
快速回復 返回頂部 返回列表