木丰雨 发表于 2015-12-11 16:59:18

小京东/ECSMART最新版JSAPI微信支付V3安装帮助手册

本文适用于小京东ECSMART的微信支付插件安装,获得方法见本文结尾。1部署代码下载的支付插件如图注意上传文件之前,请先备份mobileincludesinitphp文件。按照支付插件目录对应的结构上...关键字:   微信支付,插件安装,小京东
本文适用于小京东/ECSMART的微信支付插件安装,获得方法见本文结尾。1.部署代码下载的支付插件如图:
[*]注意: 上传文件之前,请先备份mobile/includes/init.php;
\mobile\user.php;
\mobile\themesmobile\68ecshopcom_mobile\flow.dwt;
\mobile\themesmobile\68ecshopcom_mobile\library\user_order_detail.lbi文件。
[*]按照支付插件目录对应的结构上传至服务器对应的位置上:

[*]上传\includes\modules\payment\wxpay.php至服务器\mobile\includes\modules\payment\wxpay.php;
[*]上传\languages\zh_cn\payment\wxpay.php至服务器\mobile\languages\zh_cn\payment\wxpay.php;
[*]上传\respondwx.php至服务器\mobile\respondwx.php;
[*]修改相关文件

[*]修改\mobile\includes\init.php文件:找到if(!defined('INIT_NO_SMARTY') && gzip_enabled()) 行 ,在之前加入以下代码:

[*]if( is_wechat_browser()){
[*]if(!isset($_SESSION["openid"])||empty($_SESSION["openid"])){//openid为空
[*]      if(isset($_COOKIE["openid"]) && !empty($_COOKIE["openid"])){
[*]          $_SESSION["openid"]=$_COOKIE["openid"];
[*]      }else{
[*]          include_once (ROOT_PATH . 'includes/modules/payment/wxpay.php');
[*]          $payObj = new wxpay();
[*]          $payObj->getOpenId();
[*]      }
[*]}
[*]}
[*]
[*]/* 检查是否是微信浏览器访问 */
[*]function is_wechat_browser(){
[*]$user_agent = $_SERVER['HTTP_USER_AGENT'];
[*]if (strpos($user_agent, 'MicroMessenger') === false){
[*]      return false;
[*]} else {
[*]      return true;
[*]}
[*]}
[*]修改\mobile\user.php文件:搜索available_payment_list,在该语句前面加入:

[*]$payment = payment_info($order['pay_id']);
[*]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']));
[*]$smarty->assign('pay_online', $pay_online);
[*]修改\mobile\themesmobile\68ecshopcom_mobile\flow.dwt文件:搜索”pay_online”,找到如下语句:

[*]{if $pay_online}
[*]      {if $iswei}
[*]      {if $order.pay_id == 6}
[*]          <div class="pay-btn">
[*]            <a href="weixinpay.php?oid={$order.order_id}" class="sub-btn btnRadius">微支付</a>
[*]          </div>
[*]          {else}
[*]          <div class="pay-btn">
[*]            <a href="./pay/alipayapi.php?out_trade_no={$order.order_sn}&total_fee={$total.amount_formated_wap}" class="sub-btn btnRadius">去支付宝支付</a>
[*]          </div>
[*]          {/if}
[*]      {else}
[*]      <div class="pay-btn">
[*]          <a href="./pay/alipayapi.php?out_trade_no={$order.order_sn}&total_fee={$total.amount_formated_wap}" class="sub-btn btnRadius">去支付宝支付</a>
[*]      </div>
[*]      {/if}
[*]    {/if}
有些版本是这样:
[*]{if $pay_online}
[*]    {if $iswei}
[*]      {if $order.pay_name eq "微信支付"}
[*]      <div class="pay-btn">
[*]      <a href="./includes/modules/payment/weixin.php?oid={$order.order_id}" class="sub-btn btnRadius">微支付</a>
[*]      </div>
[*]      {else}
[*]      <div class="pay-btn">
[*]      <a href="./pay/alipayapi.php?out_trade_no={$order.log_id}&total_fee={$total.amount_formated_wap}" class="sub-btn btnRadius">去支付宝支付</a>
[*]      </div>
[*]      {/if}
[*]      {else}
[*]      {if $order.pay_name eq "支付宝"}
[*]      <div class="pay-btn">
[*]      <a href="./pay/alipayapi.php?out_trade_no={$order.log_id}&total_fee={$total.amount_formated_wap}" class="sub-btn btnRadius">去支付宝支付</a>
[*]      </div>
[*]       {/if}
[*]    {/if}
[*]{/if}
在{if $iswei}后增加一段语句 ,语义是 如果$order.pay_name eq "微信支付" 则直接输出{$pay_online}。示例如下(不懂的可以购买调试服务):
[*]{if $pay_online}
[*]    {if $iswei}
[*]      {if $order.pay_name eq "微信手机支付"}
[*]            {$pay_online}
[*]       {else $order.pay_name eq "微信支付"}
[*]      <div class="pay-btn">
[*]      <a href="./includes/modules/payment/weixin.php?oid={$order.order_id}" class="sub-btn btnRadius">微支付</a>
[*]      </div>
[*]      {else}
[*]      <div class="pay-btn">
[*]      <a href="./pay/alipayapi.php?out_trade_no={$order.log_id}&total_fee={$total.amount_formated_wap}" class="sub-btn btnRadius">去支付宝支付</a>
[*]      </div>
[*]      {/if}
[*]      {else}
[*]      {if $order.pay_name eq "支付宝"}
[*]      <div class="pay-btn">
[*]      <a href="./pay/alipayapi.php?out_trade_no={$order.log_id}&total_fee={$total.amount_formated_wap}" class="sub-btn btnRadius">去支付宝支付</a>
[*]      </div>
[*]       {/if}
[*]    {/if}
[*]{/if}
[*]修改\mobile\themesmobile\68ecshopcom_mobile\library\user_order_detail.lbi文件:查找alipayapi,找到类似如下的语句:

[*]<a href="././pay/alipayapi.php?out_trade_no={$order.order_sn}&total_fee={$order.formated_order_amount_wap}" class="zhifu" style=" color:#fff; font-size:16px;">
添加一个判断 ,示例如下(不同的情况,代码有所变化):
[*]    {if $iswei}
[*]      {if $order.pay_name eq "微信手机支付"}
[*]          {$pay_online}   
[*]      {elseif$order.pay_name == "微信支付"}
[*]          <a href="./includes/modules/payment/weixin.php?oid={$order.order_id}" class="zhifu" style=" color:#fff; font-size:16px;">微支付</a>
[*]      {elseif $order.pay_name == "支付宝"}               
[*]          <a href="././pay/alipayapi.php?out_trade_no={$order.log_id}&total_fee={$order.formated_order_amount_wap}" class="zhifu" style=" color:#fff; font-size:16px;">去支付宝支付</a>
[*]      {/if}
[*]    {else}
[*]       <a href="././pay/alipayapi.php?out_trade_no={$order.log_id}&total_fee={$order.formated_order_amount_wap}" class="zhifu" style=" color:#fff; font-size:16px;">去支付宝支付</a>
[*]    {/if}
[*]修改完成后,上传至服务器。

2.微信公众平台设置/参数获取微信公众平台设置/参数获取请参考微信支付平台设置及如何获取微信支付所需参数3.安装、演示及调试请参考ecshop/ectouch最新版JSAPI微信支付V3安装帮助手册(v2.1.8)
[*]马上获取,终身升级
[*]相关产品微信支付扫码支付

[*]

sunwy 发表于 2015-12-12 09:59:54

不错不错,相信这个很多朋友能够用得上

浪情人 发表于 2016-5-11 10:45:13

经测试,在小京东V4.2版的微信上购买,没有微信支付选项。
——PC版是可以支付的。

lzg786067153 发表于 2016-10-21 17:47:54

怎么下载啊,夏夏夏,还要求这么多字

a597642180 发表于 2017-4-25 03:56:33

看看帖子,,也学习一下知识,6666666
页: [1]
查看完整版本: 小京东/ECSMART最新版JSAPI微信支付V3安装帮助手册