微信最近开发模板消息接口,认证过的公众账号,可以申请该模板消息,用于用户在支付成功等等场景下给予用户提示。

  1. 从腾讯提供的消息模板中添加到我的模板中

图片1
添加成功后可以看到模板ID,点击详情,可以查询该模板的具体数据格式
图片2
可以查看到该模板消息的 详细内容,也就是发送的数据格式

  1. 查看模板消息文档提交方式依然为JSON格式,POST请求URL地址,具体代码如下:
function curlGet($url,$method='get',$data=''){
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, strtoupper($method));
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)');
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $temp = curl_exec($ch);
    return $temp;
}


$url = 'https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN';

$json = '{
"touser":"Openid", //用户Openid
"template_id":"TEMPLATE_ID", //模板消息ID
"url":"", //留空IOS点击显示空白 Android 无法点击 非空跳转至该URL
"topcolor":"#FF0000",
"data":{
    "first": {
    "value":"黄先生",
    "color":"yellow"
    },
    "product":{
    "value":"乐事薯片",
    "color":"pink"
    },
    "price":{
    "value":"4元",
    "color":"#173177"
    },
    "time":{
    "value":"2013年9月10日",
    "color":"#173177"
    },
    "remark":{
    "value":"祝您生活愉快!",
    "color":"#173177"
    }
}
}';
$res = curlGet($url,'post',$json); 
var_dump($res);

注意:JSON格式数据要与模板消息的中的数据格式保持一致,即
{{first.DATA}} ----- >"first": {"value":"黄先生","color":"yellow"}
发送消息成功失败返回的数据格式见微信开发文档全局返回码说明

本文转自:segmentfault.com/a/1190000000672340