网友投稿技术教程文章:子比zibll主题修复易支付mapi接口无法使用的教程 ,对于使用子比主题的朋友有一定作用,推荐研究学习。
此教程适用子比主题使用易支付的场景
起因:
因目前使用的易支付平台免跳转扫码的qrcode.php接口变更为mapi.php
这就导致了到目前为止最新7.4所有版本的子比主题无法使用该平台的免跳转扫码功能。
搜遍全网也没有人发过这个教程!!!PHP一窍不通!!!这里感谢CHATGPT一路指导!!!人类之光!!!
论坛服务器规则限制无法在帖子里发PHP代码
本文的代码全部放在文章最末尾,请根据需要自取!!!
该教程适用的条件有两条
一:你的平台可以用”https://payapi.xxxzf.com/pay/submit/订单号/”这种格式的URL打开收款界面
二:检查你收款平台的开发文档,找到API接口支付下面的返回结果有无:订单号 trade_no 的返回变量
如有,接着往下看,一共两步
第一步,在主题文件编辑器找到以下路径
子比主题: zibpay-ajax.php (zibpay/functions/zibpay-ajax.php)
在第500行的位置插入以下代码
改完记得保存
第二步,在主题文件编辑器找到以下路径
子比主题: epay.class.php (zibpay/sdk/epay/epay.class.php)
在文件的开头插入以下代码
修改第232行的位置的代码
在第269行的位置插入以下代码
改完记得保存
最后在子比主题设置,商城&付费->收款接口里面,将易支付的PC端扫码支付打开,兼容模式不要开,点保存
现在,你可以优雅的使用易支付免跳转扫码收款啦~
详细代码如下:
第一步,在主题文件编辑器找到以下路径
子比主题: zibpay-ajax.php (zibpay/functions/zibpay-ajax.php)
在第500行的位置插入以下代码
if (empty($result['qrcode'])) {
$code_url = "https://payapi.xxxzf.com/pay/submit/" . $result['trade_no'] . "/";
$result['qrcode'] = $code_url;
}
第二步,在主题文件编辑器找到以下路径
子比主题: epay.class.php (zibpay/sdk/epay/epay.class.php)
在文件的开头插入以下代码
function get_real_ip_address(){
if (isset($_SERVER["HTTP_CF_CONNECTING_IP"])) {
$_SERVER['REMOTE_ADDR'] = $_SERVER["HTTP_CF_CONNECTING_IP"];
$_SERVER['HTTP_CLIENT_IP'] = $_SERVER["HTTP_CF_CONNECTING_IP"];
}
return $_SERVER['REMOTE_ADDR'];
}
修改第232行的位置的代码
原代码$this->alipay_qrcode = $this->alipay_config['apiurl'] . 'qrcode.php?';
修改为$this->alipay_qrcode = $this->alipay_config['apiurl'] . 'mapi.php?';
在第269行的位置插入以下代码
$client_ip = get_real_ip_address();
$para_filter['clientip'] = $client_ip;
原文链接:https://www.fx8y.com/jiaocheng/940.html,转载请注明出处。
免责声明:根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
用户须知:分享吧(www.fx8y.com)是非经营性个人站点,所有软件信息均来自网络及网友投稿,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途,网站会员捐赠是您喜欢本站而产生的赞助支持行为,仅为维持服务器的开支与维护,全凭自愿无任何强求。