精品深夜福利视频,日本中文字幕不卡,久久久久国产,av综合电影网站


待發短信

在線客服
產品支持 短信寶客服
合作渠道 渠道合作
服務咨詢

4001-021-502

工作時間

9:00-21:00

shopxoV6.0新增短信寶短信接口

ShopXO是國內領先的商城系統提供商,為企業提供php商城系統、微信商城、小程序。小編發現ShopXO更新到6.0版本,就以替換短信接口為例告訴大家如何進行二次開發,使用的短信接口是我們短信寶短信群發平臺的接口,我們短信寶短信群發平臺非常穩定,發送速度快,注冊就送測試短信,推薦大家使用
1:打開項目:\app\admin\view\default\sms\index.html文件,大概15行替換以下代碼

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<form class="am-form form-validation am-form-popup-sticky" action="{{:MyUrl('admin/sms/save')}}" method="POST" request-type="ajax-view" request-value="{{:MyUrl('admin/sms/index', ['type'=>'index'])}}">
    <div class="nav-content">
        <!-- table tips start -->
        {{include file="sms/tips"" /}}
        <!-- table tips end -->
        <div class="am-form-group">
            <label>短信寶賬號<span class="am-form-group-label-tips">填寫短信寶賬號</span></label>
            <input type="text" name="{{$data.common_sms_apikey.only_tag}}" placeholder="短信寶賬號" data-validation-message="{{$data.common_sms_apikey.error_tips}}" class="am-radius" {{if !empty($data)}}value="{{$data.common_sms_apikey.value}}"{{/if}} />
        </div>
        <div class="am-form-group">
            <label>短信寶密碼<span class="am-form-group-label-tips">填寫短信寶密碼</span></label>
            <input type="text" name="{{$data.common_sms_apisecret.only_tag}}" placeholder="填寫短信寶密碼" data-validation-message="{{$data.common_sms_apisecret.error_tips}}" class="am-radius" {{if !empty($data)}}value="{{$data.common_sms_apisecret.value}}"{{/if}} />
        </div>
        <div class="am-form-group">
            <label>短信寶簽名<span class="am-form-group-label-tips">填寫短信寶簽名</span></label>
            <input type="text" name="{{$data.common_sms_sign.only_tag}}" placeholder="填寫短信寶簽名" data-validation-message="{{$data.common_sms_sign.error_tips}}" class="am-radius" maxlength="16" {{if !empty($data)}}value="{{$data.common_sms_sign.value}}"{{/if}} />
        </div>
    </div>
    <div class="am-form-popup-submit">
        <button type="submit" class="am-btn am-btn-primary am-radius am-btn-xs btn-loading-example" data-am-loading="{spinner: 'circle-o-notch', loadingText:'{{:MyLang('save_title')}}'}">
            <i class="am-icon-save"></i>
            <span>{{:MyLang('save_title')}}</span>
        </button>
    </div>
</form>

2:打開項目:\app\admin\view\default\sms\message.html 大概14行替換以下代碼

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<form class="am-form form-validation am-form-popup-sticky" action="{{:MyUrl('admin/sms/save')}}" method="POST" request-type="ajax-view" request-value="{{:MyUrl('admin/sms/index', ['type'=>'message'])}}">
    <div class="nav-content">
        <!-- table tips start -->
        {{include file="sms/tips"" /}}
        <!-- table tips end -->
        <!-- 后臺 -->
        <p class="am-margin-bottom-xl am-text-sm cr-333">{{:MyLang('sms.base_item_admin_title')}}</p>
        <div class="am-form-group">
            <label>短信登錄模板<span class="am-form-group-label-tips">{{$data.admin_sms_login_template.describe}}</span></label>
            <input type="text" name="{{$data.admin_sms_login_template.only_tag}}" placeholder="填寫短信登錄模板" data-validation-message="{{$data.admin_sms_login_template.error_tips}}" class="am-radius" {{if !empty($data)}}value="{{$data.admin_sms_login_template.value}}"{{/if}} />
        </div>
        <!-- 前端 -->
        <p class="am-margin-bottom-xl am-text-sm cr-333">{{:MyLang('sms.base_item_index_title')}}</p>
        <div class="am-form-group">
            <label>通用-短信模板<span class="am-form-group-label-tips">{{$data.common_sms_currency_template.describe}}</span></label>
            <input type="text" name="{{$data.common_sms_currency_template.only_tag}}" placeholder="通用-短信模板" data-validation-message="{{$data.common_sms_currency_template.error_tips}}" class="am-radius" {{if !empty($data)}}value="{{$data.common_sms_currency_template.value}}"{{/if}} />
        </div>
        <div class="am-form-group">
            <label>用戶登錄-短信模板<span class="am-form-group-label-tips">{{$data.home_sms_login_template.describe}}</span></label>
            <input type="text" name="{{$data.home_sms_login_template.only_tag}}" placeholder="用戶登錄-短信模板" data-validation-message="{{$data.home_sms_login_template.error_tips}}" class="am-radius" {{if !empty($data)}}value="{{$data.home_sms_login_template.value}}"{{/if}} />
        </div>
        <div class="am-form-group">
            <label>用戶注冊-短信模板<span class="am-form-group-label-tips">{{$data.home_sms_user_reg_template.describe}}</span></label>
            <input type="text" name="{{$data.home_sms_user_reg_template.only_tag}}" placeholder="用戶注冊-短信模板 data-validation-message="{{$data.home_sms_user_reg_template.error_tips}}" class="am-radius" {{if !empty($data)}}value="{{$data.home_sms_user_reg_template.value}}"{{/if}} />
        </div>
        <div class="am-form-group">
            <label>密碼找回-短信模板<span class="am-form-group-label-tips">{{$data.home_sms_user_forget_pwd_template.describe}}</span></label>
            <input type="text" name="{{$data.home_sms_user_forget_pwd_template.only_tag}}" placeholder="密碼找回-短信模板" data-validation-message="{{$data.home_sms_user_forget_pwd_template.error_tips}}" class="am-radius" {{if !empty($data)}}value="{{$data.home_sms_user_forget_pwd_template.value}}"{{/if}} />
        </div>
        <div class="am-form-group">
            <label>手機號碼綁定-短信模板<span class="am-form-group-label-tips">{{$data.home_sms_user_mobile_binding_template.describe}}</span></label>
            <input type="text" name="{{$data.home_sms_user_mobile_binding_template.only_tag}}" placeholder="手機號碼綁定-短信模板" data-validation-message="{{$data.home_sms_user_mobile_binding_template.error_tips}}" class="am-radius" {{if !empty($data)}}value="{{$data.home_sms_user_mobile_binding_template.value}}"{{/if}} />
        </div>
    </div>
    <div class="am-form-popup-submit">
        <button type="submit" class="am-btn am-btn-primary am-radius am-btn-xs btn-loading-example" data-am-loading="{spinner: 'circle-o-notch', loadingText:'{{:MyLang('save_title')}}'}">
            <i class="am-icon-save"></i>
            <span>{{:MyLang('save_title')}}</span>
        </button>
    </div>
</form>

3:打開項目:\app\admin\view\default\sms\tips.html 修改跳轉方式

1
2
3
4
5
6
7
8
<div class="am-operate-stretch-tips">
    <div class="title">
        <i class="iconfont icon-tips"></i>
        <strong title="{{:MyLang('operate_list_tips_msg')}}">{{:MyLang('operate_list_tips_button_text')}}</strong>
        <i class="iconfont icon-contract contract" title="{{:MyLang('operate_list_tips_retract_text')}}"></i> 
    </div>
</div>

4:打開項目:\extend\base\Sms.php 修改短信發送函數 大概151行

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
public function SmsRequest($mobile, $template_value, $sign_name = '', $template_var = [])
{
    // 簽名
    $sign_name = empty($sign_name) ? $this->sign_ame : $sign_name;
    // 短信發送鉤子
    $hook_name = 'plugins_extend_sms_send_request_handle';
    $ret = array_filter(MyEventTrigger($hook_name, [
        'hook_name'       => $hook_name,
        'is_backend'      => true,
        'sign_name'       => $sign_name,
        'mobile'          => $mobile,
        'template_value'  => $template_value,
        'template_var'    => $template_var,
    ]));
    // 存在返回值,并且存在code和mag參數,則認為是鉤子處理短信的發送
    if(!empty($ret))
    {
        // 處理鉤子數據
        $ret = EventReturnHandle($ret);
        if($ret['code'] != 0)
        {
            $this->error = $ret['msg'];
            return false;
        }
        return true;
    }
    // 請求參數
    $request_url = ';
    $request_params = [
        'SignName'          => $sign_name,
        'Format'            => 'JSON',
        'Version'           => '2017-05-25',
        'AccessKeyId'       => $this->access_key_id,
        'Timestamp'         => gmdate('Y-m-d\TH:i:s\Z'),
        'Action'            => 'SendSms',
        'TemplateCode'      => $template_value,
        'PhoneNumbers'      => $mobile,
    ];
    // 攜帶參數
    if(!empty($template_var))
    {
        if(!is_array($template_var))
        {
            $template_var = ['code'=>$template_var];
        }
        $request_params['TemplateParam'] = json_encode($template_var, JSON_UNESCAPED_UNICODE);
    }
    $content = $template_value;
    foreach ($template_var as $k=>$v){
        $content = str_replace($k,$v,$content);
    }
    $SignName = empty($sign_name) ? $this->sign_ame : $sign_name;
    $url = $request_url.'?u='.$this->access_key_id.'&p='.md5($this->access_key_secret).'&m='.$mobile.'&c=【'.$SignName.'】'.$content;
    // 添加短信日志
    $log = SmsLogService::SmsLogAdd('smsbao', $mobile, $sign_name, $template_value, $template_var, $request_url, $request_params);
    if($log['code'] != 0)
    {
        $this->error = $log['msg'];
        return false;
    }
    $ch = curl_init ();
    curl_setopt ( $ch, CURLOPT_URL, $url );
    curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE );
    curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, FALSE );
    curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
    curl_setopt ( $ch, CURLOPT_TIMEOUT, 10 );
    $result = curl_exec ( $ch );
    curl_close ( $ch );
    if($result == '0')
    {
        // 日志回調
        SmsLogService::SmsLogResponse($log['data']['id'], 1, $result, time()-$log['data']['add_time']);
        return true;
    }
    // 錯誤原因
    $this->error = $this->GetErrorMessage($result);
    // 日志回調
    SmsLogService::SmsLogResponse($log['data']['id'], 2, $result, time()-$log['data']['add_time'], $this->error);
    return false;
}

經過上面的替換,短信寶的短信平臺已經替換成功了,可以正常使用了。進行測試發送:

報備一下短信寶的VIP模板,這樣就可以走短信寶的優質通道了,即便遇到敏感文字我們都不會人工審核,短信內容3~5秒就可送達。

另外:我們已經開發好完整的ShopXO v6.0系統短信寶插件,點擊此鏈接 下載及查看安裝流程。

開源插件

最新更新

電商類

CMS類

微信類

文章標簽
精品深夜福利视频,日本中文字幕不卡,久久久久国产,av综合电影网站
奶水喷射视频一区| 91亚洲精品视频在线观看| 麻豆高清免费国产一区| 欧美一区二区三区久久精品| 亚洲18在线| 日韩精品第二页| 国产精品一站二站| 精品免费视频| 久久久久国产| 亚洲一区日韩| 日本不卡中文字幕| 麻豆精品在线| 高潮久久久久久久久久久久久久| 国产精品极品| 国产盗摄——sm在线视频| 日韩理论片av| 伊人成人在线视频| 亚洲精品在线a| 国产精品mm| 日本少妇一区| 鲁大师影院一区二区三区| 日韩成人一级| 国内自拍视频一区二区三区| 日韩国产一区| 丝袜美腿亚洲一区| 欧美日韩调教| 美女av在线免费看| 一区二区亚洲精品| 日本精品一区二区三区在线观看视频| 日韩av字幕| 黑人精品一区| 亚洲一区中文| 国产精品伦一区二区| 欧洲一区二区三区精品| 亚洲色图国产| 亚洲一区资源| 亚洲日产国产精品| 三上亚洲一区二区| 久热re这里精品视频在线6| 久久精品av麻豆的观看方式| 国产自产自拍视频在线观看| 三级欧美在线一区| 麻豆国产精品| 亚洲国产一区二区在线观看| 日韩激情一二三区| 91精品国产调教在线观看| 日韩不卡手机在线v区| 日韩一区二区中文| 日本午夜精品| 国模 一区 二区 三区| 日本色综合中文字幕| 欧美aa在线观看| 亚洲精品成a人ⅴ香蕉片| 91一区二区三区四区| 色8久久久久| 午夜精品成人av| 日韩国产欧美在线播放| 麻豆精品蜜桃| 欧美精品三级在线| 99久久www免费| 国产日产一区| 亚洲一区二区成人| 三上悠亚国产精品一区二区三区 | 精品成人18| 石原莉奈一区二区三区在线观看 | 久久久精品区| 在线观看亚洲精品福利片| 国产精品伦理久久久久久| 亚洲一二av| 91精品婷婷色在线观看| 日韩国产精品久久久久久亚洲| 伊人久久大香线蕉av不卡| 久久不卡日韩美女| 丝袜美腿亚洲色图| 亚洲91久久| 精品淫伦v久久水蜜桃| 亚洲精品人人| 91精品1区| 久久精品免视看国产成人| 亚洲bt欧美bt精品777| 久久中文字幕av一区二区不卡| 国产亚洲一区| 热久久免费视频| 中文字幕系列一区| 老司机免费视频一区二区| 日韩高清在线不卡| 视频一区二区三区中文字幕| av高清不卡| 久久天堂影院| 你懂的亚洲视频| 欧美欧美黄在线二区| 一区二区三区网站| 图片区亚洲欧美小说区| 国产在线观看www| 久久av日韩| 日韩二区在线观看| 亚洲毛片网站| 亚洲网址在线观看| 91久久黄色| 五月婷婷六月综合| 999国产精品| 亚洲91视频| 日韩精品免费一区二区在线观看| 精品国产91| 国产 日韩 欧美 综合 一区| 麻豆国产一区| 久久亚洲精品中文字幕| 国产精品欧美日韩一区| 日韩精品一级| 日本午夜精品久久久| 日韩在线黄色| 少妇精品久久久一区二区| 一区二区三区国产盗摄| 久久国产精品毛片| 蜜桃久久久久久| 日韩制服丝袜av| 一区二区亚洲视频| 亚洲最大av| 亚洲欧洲美洲国产香蕉| 免费成人在线影院| 蜜臀av性久久久久蜜臀aⅴ流畅| 中国女人久久久| 国产视频一区欧美| 老牛影视一区二区三区| 石原莉奈在线亚洲三区| 亚洲综合福利| 青青国产精品| 欧美激情在线精品一区二区三区| 国产精品一区二区美女视频免费看| 国产欧美亚洲精品a| 国产精品麻豆成人av电影艾秋| 麻豆久久一区二区| 国产精品成人a在线观看| 日韩欧美视频专区| 欧美日韩色图| 亚洲一区网站| 日韩激情网站| 国产精品15p| 欧美丰满日韩| 亚洲欧美综合| 亚洲精品国模| 精品一区二区三区中文字幕视频 | av一区二区高清| 久久亚洲美女| 久久国产麻豆精品| 精品久久电影| 99精品综合| 蜜桃视频一区二区| 国产精品高清一区二区| 成人亚洲欧美| 国产精品免费看| 日韩福利视频一区| 欧美国产视频| 欧美日韩在线网站| 快she精品国产999| 国产乱码精品一区二区亚洲| 97精品视频在线看| 噜噜噜久久亚洲精品国产品小说| 日韩精品a在线观看91| 精品久久久中文字幕| 国产一区二区三区自拍| 一区二区三区四区在线观看国产日韩| 国产日韩欧美中文在线| av高清不卡| 亚洲乱码久久| 国产成人精品三级高清久久91| 99久久亚洲精品| 视频一区国产视频| 麻豆一区二区在线| 尤物在线精品| 国产乱码精品一区二区亚洲| 91精品韩国| 青草av.久久免费一区| 九九精品调教| 久久精品 人人爱| 婷婷国产精品| 欧美日韩亚洲一区在线观看| 久久久久久久久丰满| 国产亚洲一区二区三区不卡| 激情欧美一区二区三区| 国产精品日本一区二区不卡视频| 91精品一区国产高清在线gif| 中文字幕日本一区| av免费不卡国产观看| 婷婷精品在线| 91精品久久久久久久久久不卡| 日韩av网站在线观看| 国产在线欧美| 国产精品成人一区二区网站软件| 国产91一区| 麻豆一区在线| 中文不卡在线| a天堂资源在线| 欧美日韩91| 亚洲一区激情| 青青久久av| 老牛国内精品亚洲成av人片| 国产精品日本欧美一区二区三区| 欧美国产视频| 偷拍亚洲精品|