小程序之模版消息通知

手把手教你开发微信小程序之模版消息通知

一、模板消息功能概述

模板推送位置:服务通知

模板消息效果展示图:

                                  

进入小程序通知:

                               

二、开发前的配置准备

1、验证token是否有效

<?php
    /**
     * 验证
     */
    public function valid(){
        $echoStr = $_GET["echostr"];
        $signature = $_GET["signature"];
        $timestamp = $_GET["timestamp"];
        $nonce = $_GET["nonce"];

        $token = "ddxc";
        $tmpArr = array($token, $timestamp, $nonce);
        sort($tmpArr, SORT_STRING);
        $tmpStr = implode( $tmpArr );
        $tmpStr = sha1( $tmpStr );

        if( $tmpStr == $signature && $echoStr ){
            echo $echoStr ;
            exit;
        }else {
            echo "";
        }
    }
?>

 

2、登录 https://mp.weixin.qq.com 设置->开发设置 消息推送

 

3、获取模板ID

登录 https://mp.weixin.qq.com 获取模板,如果没有合适的模板,可以申请添加新模板,审核通过后可使用

 

 

三、功能实现

1、后端参考代码

<?php
// 模板通知
function sendMessage(){
        $openid = I('get.openid');
        if ($openid == '') {
            echo json_encode(array('msg'=>'openid不能为空!'));exit;
        }
        $form_id = I('get.form_id');
        if ($form_id == '') {
            echo json_encode(array('msg'=>'form_id不能为空!'));exit;
        }
        $title = I('get.title');
        if ($title == '') {
            echo json_encode(array('msg'=>'title不能为空!'));exit;
        }
        $name = I('get.name');
        if ($name == '') {
            echo json_encode(array('msg'=>'name不能为空!'));exit;
        }
        // 引入第三方类库
        Vendor('Wechat.Wechat');
        $wechat = new \Wechat();
        //获取access_token
        $access_token = $wechat->getToken();
        $par['openid'] = $openid;
        $par['template_id'] = 'vZi5ACIo8-rAbXxPAEmsQwyF4WCu37JM-0a6tnamcI0';
        $par['form_id'] = $form_id;
        $par['data'] = array(
            "keyword1"=>array("value"=>$title,"color"=>"#173177"),
            "keyword2"=>array("value"=>$name,"color"=>"#173177"),
        );
        $send_template = $wechat->send_template($access_token,$par);
    }
?>

2、前端参考代码

JS:

  // 发送消息模板
  messge: function(e){
    var form_id = e.detail.formId;
    wx.request({
      url: 'https://www.xxxx.cn/admin/wechat/sendMessage', //仅为示例,并非真实的接口地址
      data: {
        openid:'oAsSe4tJaMhMqkT9u5xQ61kMLIY0',
        title: '这是一个标题名123',
        name: '张三',
        form_id:form_id,
      },
      method:'GET',
      header: {
        'content-type': 'application/json' // 默认值
      },
      success: function (res) {
        console.log(res)
      }
    })
  }

WXML:

<form bindsubmit="messge" report-submit='true'>
    <button  formType="submit"> 发送消息模板 </button>
</form>

效果图:

最后


如何大家看了文章还有不懂或者其他问题,欢迎私信我或者评论

小礼物走一走,欢迎来CSDN关注我

 

 

 

猜你喜欢

转载自blog.csdn.net/qq_38912813/article/details/81745673