>[info] [模板消息](https://www.easywechat.com/4.x/official-account/template_message.html)推送:本項目的核心就是模板消息推送,這里會重點講解。
* 第一步:申請消息模板,服務號可以登錄到服務號后臺進行申請,[微信官方文檔](https://developers.weixin.qq.com/doc/offiaccount/Message_Management/Template_Message_Interface.html)
* 沒有服務號就可以跟我一樣使用[測試號](https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login),自定義模板才是最快樂的,目前我使用的模板如下所示:
`線報名稱:{{title.DATA}} 時間:{{time.DATA}} 線報線路:{{line.DATA}} 溫馨提示:{{memo.DATA}}`

>[danger] 上面的準備工作已經做好了,就可以測試下消息推送了,來個demo,在演示后面有相關講解
~~~
/**
* @param $data
* @param $openid
* 模板發送
* /api/Easycenter/moban_xianbao_test
*/
public function moban_xianbao_test()
{
$app = $this->app;
$ret = $app->template_message->send([
'touser' => 'o1nHF5nDVswOFTDLXFUftq-b-dfQ',
'template_id' => 'knGO7ph4l39KfwqqBWIsaN7vbN1j0eM9IEfn5uRbS98',
'url' => 'https://www.baicu.com',
'data' => [
'title' => [
'value' => '你好',
'color' => '#ef5b9c'
],
'time' => date("Y-m-d H:i:s"),
'line' => [
'value' => '___推送時間段:8:30~23:00',
'color' => '#6A5ACD'
],
'memo' => [
'value' => "強烈建議打開三條線路訂閱開關,數據接收更齊全",
'color' => '#FF3030'
],
],
]);
var_dump($ret);
}
返回值:
array(3) { \["errcode"\]=> int(0) \["errmsg"\]=> string(2) "ok" \["msgid"\]=> int(2268519908567318534) }
~~~

### 講解
1. touser的openid哪來?這個是關注公眾號的時候就能獲取到,后面章節會提到,環環緊扣
2. 模板消息的顏色怎么調整,上圖代碼中的color就是來調解[顏色](https://www.5tu.cn/colors/yansebiao.html)的,[顏色請參考這里](https://www.5tu.cn/colors/yansebiao.html)
3. [微信官方文檔](https://developers.weixin.qq.com/doc/offiaccount/Message_Management/Template_Message_Interface.html)僅做參考,這里使用的是封裝后的調用代碼,更加的簡介,想知道封裝的相關代碼可以直接去看easywechat包底層代碼