1、微信三方平台代公众号实现业务接口API文档地址:

https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/Official_Accounts/Official_account_interface.html

2、微信三方平台代公众号发送消息模板的模板ID是不一样的所以在公众号添加模板需要将模板ID告知三方平台开发保存数据库

3、代码实现

<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2019/7/8
* Time: 14:48
*/ namespace app\models\WeChatSendMessage; use app\librarys\wx\wx_common\wx_tools;
use app\librarys\wx\wx_customer\wx_customer; class WxPushMsg
{
/**
* pushMessage 发送自定义的模板消息
* @param array $data 模板数据
* $data = [
* 'openid' => '', 用户openid
* 'url' => '', 跳转链接
* 'template_id' => '', 模板id
* 'data' => [ // 消息模板数据
* 'first' => ['value' => urlencode('黄旭辉'),'color' => "#743A3A"],
* 'keyword1' => ['value' => urlencode('男'),'color'=>'blue'],
* 'keyword2' => ['value' => urlencode('1993-10-23'),'color' => 'blue'],
* 'remark' => ['value' => urlencode('我的模板'),'color' => '#743A3A']
* ]
* ];
* @param string $topcolor 模板内容字体颜色,不填默认为黑色
* @return array
*/ /**
*
*
* @param $wx_openid
* @param array $data
* @param $template_id
* @param string $league_id
* @return array|mixed
*/
public static function pushMessage($wx_openid, $data = [], $template_id, $league_id = '')
{
$template = [
'touser' => $wx_openid,
'template_id' => $template_id,
'url' => isset($data['url']) ? $data['url'] : "",
'topcolor' => '#0000',
'data' => $data['data']
];
$json_template = json_encode($template);
$app_id = '';//注意这是微信公众号的app_id
$url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" . wx_customer::get_access_token($app_id);
$result = wx_tools::postCurl($url, urldecode($json_template));
$resultData = json_decode($result, true);
return $resultData;
} /**
* 门店下单成功推送
* @param $order_code
* @param $customer_id
* @return array
*/
public static function leagueCreateOrderPush()
{
//获取用户默认登录信息
$data = array();
$data['url'] = 'http://weixin.qq.com/download';
$data['data'] = array( // 模板消息内容,根据模板详情进行设置
'first' => ['value' => urlencode("您好,您的订单提交成功。"), 'color' => "#743A3A"],
'keyword1' => ['value' => urlencode('我是订单号测试0001')],
'keyword2' => ['value' => urlencode(date('Y年m月d日 H:i:s', time()))],
'keyword3' => ['value' => urlencode("门店订单")],
'keyword4' => ['value' => urlencode('')],
'remark' => ['value' => urlencode("点击查看详细信息。")]
);
$re = self::pushMessage($open_id, $data, $tempt_id, '');
return $re;
}
}

PHP微信三方平台-代公众号发送消息模板的更多相关文章

  1. 微信公众号发送消息模板(java)

    这段时间接触公众号开发,写下向用户发送消息模板的接口调用 先上接口代码 public static JSONObject sendModelMessage(ServletContext context ...

  2. 微信第三方平台代公众号发起网页授权 48001 api unauthorized 问题

    https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&gr ...

  3. 微信公众号发送消息给用户 php

    1.微信公众号 这里得话 一开始先去看了 微信公众号的接口 发现网页授权需要时认证的服务号,一开始想的是那去申请一个认证的服务号岂不是很费事,然后网上搜了搜,发现了还有微信公众号个人测试号这个东西,所 ...

  4. Python 微信公众号发送消息

    1. 公众号测试地址 https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index 2. ...

  5. 公众号第三方平台开发 教程六 代公众号使用JS SDK说明

    公众号第三方平台开发 教程一 创建公众号第三方平台 公众号第三方平台开发 教程二 component_verify_ticket和accessToken的获取 公众号第三方平台开发 教程三 微信公众号 ...

  6. 微信小程序结合微信公众号进行消息发送

    微信小程序结合微信公众号进行消息发送 由于小程序的模板消息已经废弃了,官方让使用订阅消息功能.而订阅消息的使用限制比较大,用户必须得订阅.需要获取用户同意接收消息的权限.用户必须得和小程序有交互的时候 ...

  7. 微信开放平台 公众号第三方平台开发 教程四 代公众号调用接口的SDK和demo

    原文:微信开放平台 公众号第三方平台开发 教程四 代公众号调用接口的SDK和demo 教程导航: 微信开放平台 公众号第三方平台开发 教程一 平台介绍 微信开放平台 公众号第三方平台开发 教程二 创建 ...

  8. php之微信公众号发送模板消息

    讲一下开发项目中微信公众号发送模板消息的实现过程(我用的还是Thinkphp5.0). 先看一下效果,如图: 就是类似于这样的,下面讲一下实现过程: 第一步:微信公众号申请模板消息权限: 立即申请: ...

  9. php之微信公众号发送模板消息参观模仿

    上篇文章中鞋到了公众号发送末班消息,他是最后调用两个方法,本文章简化一下 将下面的php方法放到一个可以引入的公共类中即可 构建模板消息: 我把需要用到的模板消息 都写成一个个方法,放在公共类文件中了 ...

  10. 微信公众号发送告警Python脚本

    调用该脚本,可以向微信公众号发生告警. #!/bin/env python #coding:utf-8 #Author: Hogan #Descript : 微信公众号发送告警脚本 import ur ...

随机推荐

  1. uiautomator2自动化工具的下载与安装

    前言: 相信很多使用appium做过APP自动化的人都深有感触: 1,安装麻烦,配置环境可能会难道不少人 2,appium运行慢.时间长 3,uiautomatorviewer定位元素时得关掉appi ...

  2. bzoj 3561

    题意:求$\sum_{i=1}^{n}\sum_{j=1}^{n}lcm(i,j)^{gcd(i,j)}$ 神仙题... 首先可能会想到一个转化,就是$lcm(i,j)=\frac{ij}{gcd(i ...

  3. python+pytesseract识别图片文字

    此文只介绍一下python+pytesseract识别一些简单图片的数字,字母和汉字.如图1 import pytesseract from PIL import Image,ImageEnhance ...

  4. Python openpyxl【包】

    介绍 Excel是我们日常工作中经常用到的办公软件,在处理数据和表格方面有着优异的性能,那么能不能用python来操作Excel呢? 答案是肯定的,openpyxl是一个第三方库,可以处理xlsx格式 ...

  5. 未知:长度为 K 的重复字符子串

    给你一个由小写字母组成的长度为n的字符串 S ,找出所有长度为 k 且包含重复字符的子串,请你返回全部满足要求的子串的数目.   数据范围:  , 进阶: 时间复杂度,空间复杂度 输入例子1: &qu ...

  6. 关于js数组方法forEach()

    1.forEach()是什么? forEach()是一种数组遍历方法. 在js最基础的遍历数组方法可能是这样的 点击查看代码 var myArr = [1, 2, 3] for(var i = 0; ...

  7. Shell 更多结构化命令(流程控制)

    更多的结构化命令 上一章里,你看到了如何通过检查命令的输出和变量的值来改变 shell 脚本程序的流程.本章会继续介绍能够控制 shell 脚本流程的结构化命令.你会了解如何重复一些过程和命令,也就是 ...

  8. 11.30linux学习第十一天

    今天老刘上课,第7章收尾,第8章开了个头. 7.1.3  磁盘阵列+备份盘 RAID 10磁盘阵列中最多允许50%的硬盘设备发生故障,但是存在这样一种极端情况,即同一RAID 1磁盘阵列中的硬盘设备若 ...

  9. js 将多层json对象 转化为一层json

    const parse = data => { const uid = `uid_${Date.now()}`; const process = (input, prefix = '', jso ...

  10. Ubuntu常用命令(二)

    clash 启动 #.clash -d . sudo /home/lizhenyun/clash/clash -d /home/lizhenyun/clash/ deb包安装 sudo dpkg -i ...