为什么80%的码农都做不了架构师?>>>
##背景 新需求,需要在订单的时候给用户,商家,配送员发送想对于的微信消息模板,之前没有做过微信公众号相关的开发,这次就一并熟悉吧 ##公众号注册 第一步就是要进行公众号的注册,这个东西这个东西网上有教程,这个就不说了 ##公众号的开发 首先需要在微信公众号里面设置
点击基本配置
修改配置
填写你的url和基本信息
这个url就是你公众号的唯一url,用户发送的内容什么的全部要走这个URL
然后我用的yii2.0+easyWechat
<?php// 这行代码是引入 `composer` 的入口文件,这样我们的类才能正常加载。include __DIR__ . '/vendor/autoload.php';// 引入我们的主项目的入口类。use EasyWeChat\Foundation\Application;// 一些配置$options = [...];// 使用配置来初始化一个项目。$app = new Application($options);$response = $app->server->serve();// 将响应输出$response->send(); // Laravel 里请使用:return $response;
这样的话,我们的这个url就会通过验证,就可以做开发了
##消息模板
首先我们要在公众号里面去申请(新建一个消息模板),我这里只是申请别人已经有了的模板
这个唯一的ID就是你触发这个模板的时候的唯一标示,而其他一些内容,部分是固定的,部分是可改动的(用{{}}括起来的内容就是)
##模板发送
最后就是如何发送给用户的问题了,这里也很简单,参考easyWeChat里面就可以了
<?phpuse EasyWeChat\Foundation\Application;// ...$app = new Application($options);$notice = $app->notice;$userId = 'OPENID';$templateId = 'ngqIpbwh8bUfcSsECmogfXcV14J0tQlEpBO27izEYtY';$url = 'http://overtrue.me';$data = array("first" => "恭喜你购买成功!","name" => "巧克力","price" => "39.8元","remark" => "欢迎再次购买!",);$result = $notice->uses($templateId)->withUrl($url)->andData($data)->andReceiver($userId)->send();var_dump($result);// {//"errcode":0,//"errmsg":"ok",//"msgid":200228332// }
具体调用的方法有很多,如果有什么不懂,可以参考
微信公众号官方文档 EasyWeChat官方文档