php微信公众号发送多条消息模板,整合ThinkPHP功能系列之微信公众号模板消息发送...

news/2025/3/5 12:18:59/

format,png

模板消息还是在商城类的微信项目中使用比较多,模板消息仅用于公众号向用户发送重要的服务通知,只能用于符合其要求的服务场景中,如绑定手机号通知,商品购买成功通知等,不支持广告等营销类消息以及其它所有可能对用户造成骚扰的消息

所有服务号都可以在功能、添加功能插件处看到申请模板消息功能的入口,但只有认证后的服务号才可以申请模板消息的使用权限并获得该权限

这里不说申请。。。对于模板ID的获取请自行去获取,这里只说在ThinkPHP框架下对微信模板消息发送进行封装

代码封装好的我上传到了Github上,自己去查看一下,地址:thinkphp-syz,这里说一下主要的

/**

* 获取微信access token

* @return mixed

*/

public function getAccessToken()

{

$accessToken = S('ACCESS_TOKEN');

if(is_null($accessToken)) {

self::$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$this->_appid}&secret={$this->_key}";

$tokenJson = self::curlRequest(self::$url);

$tokenArr = json_decode($tokenJson,true);

if(isset($tokenArr['errcode'])) {

return false;

}

// 缓存$tokenArr['access_token']数据7200秒

S('ACCESS_TOKEN',$tokenArr['access_token'],$tokenArr['expires_in']);

$accessToken = $tokenArr['access_token'];

}

return $accessToken;

}

这里获取了微信的access_token,access_token是公众号的全局唯一接口调用凭据,公众号调用模板消息接口时需要使用access_token

access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效,然而请求次数也有所限制,所以我们需要使用缓存来操作

这里最好使用Redis去操作发送模板消息或者请求获取access_token接口

将微信模板消息ID的参数信息放到config里面,具体的自行配置吧,目录在 Application\Common\Conf\wechat.php 中

'TEMPLETEID' => array(

'1' => '', //推荐成功通知

'2' => '', //收益提示

'3' => '', //订单发货通知

'4' => '', //订单支付成功

'5' => '', //手机绑定成功通知

),

配置完成以后就开始调用吧

/**

* 微信模板消息发送接口示例demo

*/

public function sendWeChatTemplete()

{

vendor('Weixin.WeChatTemplete');

$openid = ''; //用户的openid

$templateId = C('TEMPLETEID.5'); //微信模板ID

// 详细内容

// {{first.DATA}}

// 手机号:{{keyword1.DATA}}

// 时间:{{keyword2.DATA}}

// {{remark.DATA}}

// 内容示例

// 您好,欢迎注册沈唁志!

// 手机号:13800000000

// 时间:2016-05-03 12:00:00

// 沈唁博客(qq52o.me)是关注PHP开发等技术的个人博客,同时是个人程序人生的点滴记录和时光储备。

// (点击跳转到首页)

$data= array(

'first'=> array('value'=>'您好,欢迎注册沈唁志!'),

'keyword1'=> array('value'=>'13800000000'), //手机号

'keyword2'=> array('value'=>date("Y-m-d H:i:s",time())), //时间 格式 '2016-05-03 12:00:00'

'remark'=> array('value'=>'沈唁博客(qq52o.me)是关注PHP开发等技术的个人博客,同时是个人程序人生的点滴记录和时光储备。'),

);

$url = 'https://qq52o.me/'; //点击模板详情跳转地址 默认为null

$appid = C('WECHAT.appid');

$key = C('WECHAT.appKey');

$wct = new WeChatTemplete($appid,$key); //初始化类

$result = $wct->sendTemplate($openid, $templateId, $data, $url); //执行发送

p($result);

}

这里没有封装跳转小程序的,只有跳转网页,url这个跳转默认为空,如果需要跳转的话就传$url的参数即可

有问题还是多看看官方文档吧


http://www.ppmy.cn/news/713248.html

相关文章

个人微信开发api文档

个人微信开发api文档 个人微信开发api文档,个人微信开发sdk,个人微信开发协议接口 微信开发sdk服务端调用接口 1、基础消息类型 1、客户端发送的心跳包 HeartBeatReq 1001; 2、消息接收确认回复(接收或拒绝接收) MsgReceivedAck…

钉钉如何群里定时发送文件_简单好用的钉钉群消息助手

点击上方"IT牧场",选择"设为星标" 技术干货每日送达! 我们常常会遇到向钉钉群中发送消息的需求,所以我开源了一个钉钉群消息助手。 瓦力 瓦力是一个轻量级的钉钉群消息发送助手,通过瓦力你只需要配置一个发送消息的模板(支持多个地址,且可以在运行时动…

python 发送微信语音消息_全网最全的Windows下Anaconda2 / Anaconda3里Python语言实现定时发送微信消息给好友或群里(图文详解)...

不多说,直接上干货! 缘由: (1)最近看到情侣零点送祝福,感觉还是很浪漫的事情,相信有很多人熬夜为了给爱的人送上零点祝福,但是有时等着等着就睡着了或者时间并不是卡的那么准就有点强迫症了,这是也许程序会解决我们的问题。 (2)如果你女朋友需要天天给她微信发“晚安”,…

用python实现微信定时发文

-如果你女朋友需要天天给她微信发“晚安”,你一般怎么做呢? -每天用手机敲出来 -忘记了怎么办? -设个闹钟 -哥不扶墙,就服你 作为程序员哥哥,你如果再怎么low,那就有点愧对你的身份了。一想&#xff0…

使用树莓派定时给微信群发消息

需求强烈 单位领导要求在微信群天天定时汇报个人情况,此处个人情况内容是固定的(这个很重要)。春节过年,哪能天天记着去发微信,而且心理惦记个事也是很难受的,因此决定看看能不能开发程序解决!…

java调用个人微信api接口实现收发消息发朋友圈

个人微信api接口,java调用个人微信api接口实现收发消息发朋友圈 1、微信好友收发消息 /** * 给微信好友发消息 * author wechatno:tangjinjinwx * blog http://www.wlkankan.cn */ Async public void handleMsg(ChannelHandle…

Autojs微信研究:微信自动发送信息机器人最终成品(有效果演示)

目录 效果动图 日志信息输出 功能简述 项目结构 总结 好久不见,公司相关需求早就全部完成了,并且稳定测试运行,效果图大家可以看下面。 效果动图 日志信息输出 14:12:07.025/V: 开始运行[/storage/emulated/0/脚本/微信自动化消息发送…

【自动群发小助手】微信也能定时发送消息?过年终于不用熬夜守点发祝福了~

前言 🚀 作者 :“程序员梨子” 🚀 **文章简介 **:本篇文章主要讲解利用itchat实现一个自动群发祝福语的效果啦。 🚀 **文章源码获取 **: 为了感谢每一个关注我的小可爱💓每篇文章的项目源码都是…