400-800-9385
网站建设资讯详细

使用PHP程序给用户发送微信模板消息的完整流程

发表日期:2018-06-15 09:35:31   作者来源:方维网络   浏览:6560   标签:模板消息    微信公众号开发    
一般来说,给用户发送微信模板消息是为了通知用户或推送广告,但发送消息的前提条件是用户必须关注该微信公众号才能收到消息。除了用户关注该公众号外,还需要进一些设置,首先是在微信公众平台网站里申请“模板消息”,如下图所示,在“微信公众平台”-“功能”-“模板消息”里。
 
微信公众号后台

如果找不到该插件,则需要通过“添加插件的功能”来申请开通微信模板插件,如下图所示:
因为申请插件需要审核时间,所以有使用前需要先申请好。

插件功能
 
还必须申请微信公众号的APPID和AppSecret ,然后是需要获得用户登录的openid,有了这三个参数,就可以对用户发送模板消息了。
发送模板消息的第一步是在模板库里搜索符合自己的模板,然后添加该模板,这样就可以获取该模板ID和模板的内容了。以“支付成功通知”的模板为例,如下图:

微信模板
 
其中{{first.DATA}},{{keyword1.DATA}}等都是变量,也就是说我们可以改成自己需要的内容,而像“门票类型”、“数量:”、“支付金额”等固定的文字是不能更改,当然也不能删除,用户一定会看到这些参数,如果你觉得该消息模板的某些不适合使用,那就需要重新搜索获取其他的消息模板了。
发送模板消息的代码如下:
$appid = C('APPID');
$secret = C('SECRET');
$access_token = $this->getToken($appid,$secret);//getToken函数如下图:

代码片段1

$openid = M('Member')->getFieldByMemberId($member_id,'openid'); //获取用户的openid 
$url='https://api.weixin.qq.com/cgi-bin/message/template/send?access_token='.$access_token; //发送的URL
消息模板的内容如下:

代码片段2
 
 $this->doSend($openid,'D3joxhkwzJ9g0aD3_f5CcY2CwGvH09cOiIDzkOQVJ8Q',$url,$moban_data);//执行该程序即可发送模板消息,其中doSend函数如下图:

后台发送数据代码
request_post函数如下图:

PHP代码

这就是使用PHP程序发送模板消息完整过程,需要注意用户必须关注了该公众号,并且保存过用户的Openid(一般保存在会员表里),才可以发送模板消息,值得注意的是,发送的模板消息需要设置IP白名单,在“设置”-“安全中心”-“IP白名单”里设置,如下图所示:

代码IP白名单

设置之后把程序文件放置该IP的服务器,这样才可以发送模板消息。还有一点,就是在任何时候都可以发送模板消息,例如用户在咱们的订票网站里使用支付宝来支付订单,我们一样可以通过发送微信模板消息给用,让用户在微信里也能收到支付的信息。

作者:方维网络陈应信
如没特殊注明,文章均为方维网络原创,转载请注明来自https://www.szfangwei.cn/news/4360.html