西部数码主机 | 阿里云主机| 虚拟主机 | 服务器 | 返回乐道官网
当前位置: 主页 > php教程 > zencart教程 >

zencart在pc与移动端显示不同的支付方式

时间:2016-09-15 22:50来源:未知 作者:好模板 点击:
需求: zencart根据在pc端 \ 移动应用端 \ 移动网页端 , 显示不同的支付方式: 在includes/templates/template_default/templates/下修改 tpl_checkout_payment_default.php文件, 先根据 userAgent判断是否是移动应用
需求: zencart根据在pc端 \ 移动应用端 \ 移动网页端 , 显示不同的支付方式:
 
在includes/templates/template_default/templates/下修改 
tpl_checkout_payment_default.php文件, 先根据 userAgent判断是否是移动应用访问 , 在根据条件判断是否显示支付选项: 
1.修改支付选项前面的radiobuttion是否显示,将
 
<?php echo zen_draw_radio_field('payment', $selection[$i]['id'], ($selection[$i]['id'] == $_SESSION['payment'] ? true : false), 'id="pmt-'.$selection[$i]['id'].'"'); ?>
1
修改为:
 
<?php 
if(strpos($_SERVER['HTTP_USER_AGENT'],'FLAG_APP') !== false){//如果不为false,说明是移动应用访问
    if ($selection[$i]['id'] == 'alipaydirect') {//如果是alipayapp
    //什么 都不做
    }else if ($selection[$i]['id'] == 'alipayapp'){//如果是alipaydirect,设置为默认
        echo zen_draw_radio_field('payment', $selection[$i]['id'], ($selection[$i]['id'] == $_SESSION['payment'] ? true : false), 'id="pmt-'.$selection[$i]['id'].'" checked="checked"');
     }else{
        echo zen_draw_radio_field('payment', $selection[$i]['id'], ($selection[$i]['id'] == $_SESSION['payment'] ? true : false), 'id="pmt-'.$selection[$i]['id'].'"'); 
    }
}else{
    if ($selection[$i]['id'] == 'alipayapp') {//如果是alipayapp
        //什么 都不做
    }else if ($selection[$i]['id'] == 'alipaydirect'){//如果是alipaydirect,设置为默认
        echo zen_draw_radio_field('payment', $selection[$i]['id'], ($selection[$i]['id'] == $_SESSION['payment'] ? true : false), 'id="pmt-'.$selection[$i]['id'].'" checked="checked"');
    }else{
        echo zen_draw_radio_field('payment', $selection[$i]['id'], ($selection[$i]['id'] == $_SESSION['payment'] ? true : false), 'id="pmt-'.$selection[$i]['id'].'"');
    }
}
?>
 
修改radiobuttion后面的支付方式logo和文字是否显示: 
将:
<label for="pmt-<?php echo $selection[$i]['id']; ?>" class="radioButtonLabel"><?php echo $selection[$i]['module']; ?>
 
改为
 
<!-- 下面判断lable的是判断是否显示alipaydirect的图标和名称  -->
<?php if(strpos($_SERVER['HTTP_USER_AGENT'],'FLAG_APP') !== false){//如果不为false,说明是移动应用访问 ?>
<label for="pmt-<?php if ($selection[$i]['id'] !== 'alipaydirect'){  echo $selection[$i]['id']; }?>" class="radioButtonLabel"><?php  if ($selection[$i]['id'] !== 'alipaydirect'){ echo $selection[$i]['module'];} ?></label>
<?php }else{?>
<label for="pmt-<?php if ($selection[$i]['id'] !== 'alipayapp'){  echo $selection[$i]['id']; }?>" class="radioButtonLabel"><?php  if ($selection[$i]['id'] !== 'alipayapp'){ echo $selection[$i]['module'];} ?></label>
<?php }?>
 
 
注: 
1 . 以上的 selection[i][‘id’] == ‘alipaydirect’ , 里面的alipaydirect是关键 , 即支付方式 
取includes\modules\payment\ 文件夹下相应通道接口文件名即可。 
如 paypal.php,alipayapp.php 的为 paypal,alipayapp
 
<?php if ($selection[$i]['id'] == 'paypal') { ?>
 
<?php if ($selection[$i]['id'] == 'alipayapp') { ?>
 
以上的 
(责任编辑:好模板)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------