• ecshop开发日志之支付插件开发


    ecshop开发一个支付插件的方法(例如要新建一个为paytest-----支付测试)
    1.languages/zh_cn/payment/目录下新建一个paytest.php文件
      内容如下:

    <?php
    global $_LANG;
    
    $_LANG['paytest'] = '支付插件的名称';//$_LANG['这里的字段一定要与文件名保持一直,否则在后台不出现支付方式的名称']
    $_LANG['paytest_desc'] = '这里是插件的描述信息';
    //之后的项目根据不同的支付方式自定义即可一般以$_LANG['paytest_xxx'] = '';的形式展现
    ?>

    2.includes/modules/payment目录下新建paytest.php(必须与步骤1新建文件名相同)
    代码如下:双//注释部分是需要注意的地方

      1 <?php
      2 if (!defined('IN_ECS'))
      3 {
      4     die('Hacking attempt');
      5 }
      6 
      7 $payment_lang = ROOT_PATH . 'languages/' .$GLOBALS['_CFG']['lang']. '/payment/paytest.php';
      8 //paytest.php这个文件名就是languages对应语言包的payment下的文件名
      9 
     10 if (file_exists($payment_lang))
     11 {
     12     global $_LANG;
     13 
     14     include_once($payment_lang);
     15 }
     16 
     17 /* 模块的基本信息 */
     18 if (isset($set_modules) && $set_modules == TRUE)
     19 {
     20     $i = isset($modules) ? count($modules) : 0;
     21 
     22     /* 代码 */
     23     $modules[$i]['code']    = basename(__FILE__, '.php');
     24 
     25     /* 描述对应的语言项 */
     26     $modules[$i]['desc']    = 'paytest_desc';//这是对支付方式的描述语言包里对应为$_LANG['paytest_desc']
     27 //下面的选项自定义填写这里不做修改
     28     /* 是否支持货到付款 */
     29     $modules[$i]['is_cod']  = '0';
     30 
     31     /* 是否支持在线支付 */
     32     $modules[$i]['is_online']  = '0';
     33 
     34     /* 作者 */
     35     $modules[$i]['author']  = 'ECSHOP TEAM';
     36 
     37     /* 网址 */
     38     $modules[$i]['website'] = 'http://www.ecshop.com';
     39 
     40     /* 版本号 */
     41     $modules[$i]['version'] = '1.0.0';
     42 
     43     /* 配置信息 */
     44     $modules[$i]['config']  = array();
     45 /*
     46     $modules[$i]['config']  = array(
     47         array('name' => 'paytest_test',              'type' => 'text',   'value' => ''),
     48         array('name' => 'paytest_pay_method',        'type' => 'select', 'value' => '')
     49     );
     50     //如果按照注释中方法写配置信息
     51     语言文件中应该加入
     52     $_LANG['paytest_test'] = '';
     53     $_LANG['paytest_pay_method'] = '';
     54     $_LANG['paytest_pay_method'][0] = '';
     55     $_LANG['paytest_pay_method'][1] = '';
     56     $_LANG['paytest_pay_method'][2] = '';
     57 */
     58     return;
     59 }
     60 
     61 /**
     62  * 类
     63  */
     64 class paytest//类名与文件名保持一直
     65 {
     66     /**
     67      * 构造函数
     68      *
     69      * @access  public
     70      * @param
     71      *
     72      * @return void
     73      */
     74     //php5.3版本以上__construct形式构造函数需要在类名同名方法的前面定义
     75     function __construct()
     76     {
     77         $this->paytest();
     78     }
     79 
     80     function paytest()
     81     {
     82     }
     83     /**
     84      * 提交函数
     85      */
     86     function get_code()
     87     {
     88         /*your code*/
     89         return;
     90     }
     91 
     92     /**
     93      * 处理函数
     94      */
     95     function response()
     96     {
     97         /*your code*/
     98         return;
     99     }
    100 }
    101 
    102 ?>

    3.到此,在后台支付方式下可以出现新开发的paytest的支付方式

  • 相关阅读:
    (Java实现) 洛谷 P1603 斯诺登的密码
    (Java实现) 洛谷 P1036 选数
    (Java实现) 洛谷 P1036 选数
    (Java实现) 洛谷 P1012 拼数
    (Java实现) 洛谷 P1012 拼数
    (Java实现) 洛谷 P1028 数的计算
    (Java实现) 洛谷 P1028 数的计算
    (Java实现) 洛谷 P1553 数字反转(升级版)
    8.4 确定两个日期之间的月份数或年数
    (Java实现) 洛谷 P1553 数字反转(升级版)
  • 原文地址:https://www.cnblogs.com/azhw/p/4379072.html
Copyright © 2020-2023  润新知