1,微信公众平台选择合适的模板消息进行添加
2,写model类
/**
* 微信客服接口操作类
*/
class TemplateMessageModel extends Model {
protected $tableName = 'user';
/* 货到付款订单成功通知 */
public function replyOrderSuccess($uid,$first='',$orderId='',$orderPrice='',$orderYhPrice='',$remark="",$url='',$templateId='') {
$first == '' && $first='您的订单成功,您选择的支付方式是货到付款,请等待我们发货';
$orderId=='' && $orderId=time_format(time(),'YmdHis');
$remark =='' && $remark='货到付款请留意发货信息,谢谢!';
$orderYhPrice =='' && $orderYhPrice='0';
$param['data']['first']['value']=$first;
$param['data']['first']['color']="#173177";
$param['data']['keyword1']['value']=$orderId;
$param['data']['keyword1']['color']="#173177";
$param['data']['keyword2']['value']=date("Y-m-d H:i:s");
$param['data']['keyword2']['color']="#173177";
$param['data']['keyword3']['value']=$orderPrice;
$param['data']['keyword3']['color']="#173177";
$param['data']['keyword4']['value']=$orderYhPrice;
$param['data']['keyword4']['color']="#173177";
$param['data']['remark']['value']=$remark;
$param['data']['remark']['color']="#173177";
$templateId=='' && $templateId='OdB9-G6_r_nkm20QNQo_t2G6nTOE0rzGb-q84ra1TGs';
return $this->_replyData ( $uid, $param, $templateId,$url);
}
/* 发送回复模板消息到微信平台 */
function _replyData($uid, $param,$template_id,$jumpUrl='') {
$map ['token'] = get_token ();
$map ['uid'] = $uid;
$param ['touser'] = M ( 'public_follow' )->where ( $map )->getField ( 'openid' );
$param['template_id']=$template_id;
$param['url']=$jumpUrl;
$url = 'https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=' . get_access_token ();
// dump($param);
// die;
$result ['status'] = 0;
$result ['msg'] = '发送失败';
$res = post_data ( $url, $param );
if ($res ['errcode'] != 0) {
$result ['msg'] = error_msg ( $res );
} else {
$result ['status'] = 1;
$result ['msg'] = '发送成功';
}
return $result;
}
}3,function.php
// 获取当前用户的Token
function get_token($token = NULL) {
$stoken = session ( 'token' );
$domain = explode ( '.', SITE_DOMAIN );
if ($token !== NULL && $token != '-1') {
session ( 'token', $token );
} elseif (empty ( $stoken ) && C ( 'DIV_DOMAIN' ) && ! is_numeric ( $domain [0] ) && SITE_DOMAIN != 'localhost') { // 泛域名支持
$domain = explode ( '.', SITE_DOMAIN );
$map ['domain'] = $domain [0];
! $GLOBALS ['is_wap'] && $GLOBALS ['mid'] && $map ['uid'] = $GLOBALS ['uid'];
$token = D ( 'Common/Public' )->where ( $map )->getField ( 'token' );
$token && session ( 'token', $token );
} elseif (! empty ( $_REQUEST ['token'] ) && $_REQUEST ['token'] != '-1') {
session ( 'token', $_REQUEST ['token'] );
} elseif (! empty ( $_REQUEST ['publicid'] )) {
$publicid = I ( 'publicid' );
$token = D ( 'Common/Public' )->getInfo ( $publicid, 'token' );
$token && session ( 'token', $token );
}
$token = session ( 'token' );
if (empty ( $token ) || $token == '-1') {
// $map ['uid'] = session ( 'mid' );
// if ($map ['uid'] > 0) {
// $user = get_userinfo ( $map ['uid'] );
// $user ['level'] < 2 && $user ['manager_id'] > 0 && $map ['uid'] = $user ['manager_id'];
// $token = $user ['level'] < 2 || $user ['has_public'] ? D ( 'Common/Public' )->where ( $map )->getField ( 'token' ) : DEFAULT_TOKEN;
// isset ( $user ['has_public'] ) && $token && session ( 'token', $token );
// } else {
$token = DEFAULT_TOKEN;
// }
}
return $token;
}4,使用
$goods_string = implode(",", $goods_array);//商品名称
$url1 =XXX;
$rs = D ( 'TemplateMessage' )->replyOrderSh($follow_id,"",$order_info['send_time'],$goods_string,$follow['nickname'],"",$url1);