微信公众号百度推送开发者中心模式下如何点击菜单推送随机图文消息?

如何将微信公众号图文消息直接推送到会话界面?而非必须点击历史记录才看得到_百度知道
如何将微信公众号图文消息直接推送到会话界面?而非必须点击历史记录才看得到
而非必须点击历史记录才看得到现在的问题是,图文消息群发后。谢谢,关注我的粉丝在会话界面看不到每日推送,请问如何将微信公众号图文消息直接推送到会话界面,必须点击右上角小人到历史记录才能看到
例如点击哪里哪里,查看我们的往期精彩。如果实在很想别人看到,引导别人点开你的历史消息。或者做得更复杂一点,可以利用下面的菜单栏。③ 其他的关键词自动回复:设置一个别人关注你后的自动回复:可以再菜单栏出添加一个往期精彩之类的菜单,在对话面板上是看不到他关注你之前的内容的。①菜单栏,或者微信的自动回复,然后粉丝回复序号可以得到那期消息之类的,你也可以设置,将往期的每一条都自编一个序号或文字关键词,点进去之后连接到历史消息页面②自动回复新关注你的粉丝,关注后自动回复粉丝往期有这些内容
你好,不过问题是,现在粉丝关注之后我发送的图文消息也不能显示在对话界面里,即粉丝通过订阅号红点进来看到的是空白的对话窗口,必须要点右上角小人到查看历史消息里才能看到更新。
粉丝新关注你后,你有推送消息吗。例如粉丝是7月5日关注你的,这样你7月6日推送的消息他们会看到,但是你7月4日推送的消息他们就看不到了哦~如果你7月6日没有推送任何消息,这样他们和你的对话界面就是空的啦。但是如果你7月6日推送了消息,粉丝却没有看到,这个应该就是他手机的问题了。
其他类似问题
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁& 开源中国(OSChina.NET) |
开源中国社区(OSChina.net)是工信部
指定的官方社区[最扎实]&&设计师来自星狮创想,程序员出身兄弟连,功底扎实
[最便宜]&&同一时期,同等质量,同等售后,我们价格最低
[最专一]&&SOHO办公,发自内心的热爱我们的专业,宅到底
[有希望]&&我们开发的网站,是帮助您创造价值的工具
[最惊喜]&&不定期赠送原创的高价值的插件或服务
优品致远公众号,分享最前沿的微信公众号平台最新动态,最新最前沿的视频教程信息,高价值微信推广情报,值得关注。
我们致力于打造自动化智能的B/S系统,让客户坐拥自动赚钱的网站或流程数字化管理系统。优品致远,您的自动赚钱网站梦工厂。
我们需要你:愿意全身心投入到公司,有企图心,有良好的个性,有灵性有悟性。马上来,我们就一起干。
咨询,申请体验,合作,建议,反馈等,请先填写接待登记表。
半紧密联盟指的是:优品致远的顾客同时也是您的顾客,您的顾客同时也是优品致远的顾客,我们我合作,独立品牌、独立运营、独立财务的联盟方式。
该模式比较适合于拥有政府、教育、电信、能源、企业等渠道资源的政府机构/企业或者个人,需要大批量做网站,网站功能类似,把网站作为服务的配套,或者需要批量采购优品致远原创开发的系统。
合作意向,请拨打总经理(唐)手机号码:,或者发送E-mail:
紧密联盟指的是:优品致远的顾客同时也是您的顾客,您的顾客同时也是优品致远的顾客,我们合作,共享品牌、独立运营、独立财务的联盟方式。
该模式比较适合网页设计师,制作,程序师,网站建设工作室,自由职业者,非京城网站建设公司合作,拥有渠道资源的个人。
合作意向,请拨打总经理(唐)手机号码:,或者发送E-mail:
> 微信自定义菜单功能开发教程
来源: &&&&作者: &&&&更新时间: 18:16:11
&&&&浏览量:
微信公众平台服务号以及之前成功申请内测资格的订阅号都具有自定义菜单的功能。开发者可利用该功能为公众账号的会话界面底部增加自定义菜单,用户点击菜单中的选项,可以调出相应的回复信息或网页链接。自定义菜单接口将为公众账号的信息展示空间提供更多可能性。本文将针对自定义菜单做简单的开发应用,以供读者参考。
二、官方说明
开发者获取使用凭证后,可以使用该凭证对公众账号的自定义菜单进行创建、查询和删除等操作。 自定义菜单接口可实现以下类型按钮:
click(点击事件):
用户点击click类型按钮后,微信服务器会通过消息接口(event类型)推送点击事件给开发者,并且带上按钮中开发者填写的key值,开发者可以通过自定义的key值进行消息回复。
view(访问网页):
用户点击view类型按钮后,会直接跳转到开发者指定的url中。
创建自定义菜单后,由于微信客户端缓存,需要24小时微信客户端才会展现出来。建议测试时可以尝试取消关注公众账号后,再次关注,则可以看到创建后的效果。
文档地址:http://mp./wiki/index.php?title=%E8%87%AA%E5%AE%9A%E4%B9%89%E8%8F%9C%E5%8D%95%E6%8E%A5%E5%8F%A3
三、获取使用凭证
3.1 获取appid 和appsecret
在 微信公众平台 & 高级功能 & 开发模式中找到appid&和appsecret。
3.2 使用appid 和appsecret 向微信凭证获取接口请求access_token
请求地址:
请求参数说明:
grant_type:获取access_token填写client_credential
appid:第三方用户唯一凭证
secret:第三方用户唯一凭证密钥,既appsecret
返回说明:
正确的Json返回结果:
1.{&access_token&:&ACCESS_TOKEN&,&expires_in&:7200}
返回参数说明:
access_token:获取到的凭证
expires_in:凭证有效时间,单位:秒
3.3 具体实现
a. 打印出格式
01.&!--?php
03.$APPID=&wxdxxxxxxxxxxxxxxx&;
04.$APPSECRET=&96xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&;
06.$TOKEN_URL=&&.$APPID.&&secret=&.$APPSECRET;
08.$json=file_get_contents($TOKEN_URL);
09.$result=json_decode($json,true);
10.print_r($result);
结果如下:
b. 获取access_token
01.&!--?php
03.$APPID=&wxdxxxxxxxxxxxxxxx&;
04.$APPSECRET=&96xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&;
06.$TOKEN_URL=&&.$APPID.&&secret=&.$APPSECRET;
08.$json=file_get_contents($TOKEN_URL);
09.$result=json_decode($json,true);
11.$ACC_TOKEN=$result['access_token'];
13.echo $ACC_TOKEN;
注:access_token对应于公众号是全局唯一的票据,重复获取将导致上次获取的access_token失效。&
四、创建菜单
方法:通过POST一个特定结构体,实现在微信客户端创建自定义菜单。
请求地址:https://api./cgi-bin/menu/create?access_token=ACCESS_TOKEN
请求示例:
02.&&button&:[
04.&&&&&&&&name&:&公共查询&,
05.&&&&&&&&sub_button&:[
06.&&&&&&&&{
07.&&&&&&&&&&&&type&:&click&,
08.&&&&&&&&&&&&name&:&天气查询&,
09.&&&&&&&&&&&&key&:&tianQi&
10.&&&&&&&&},
11.&&&&&&&&{
12.&&&&&&&&&&&&type&:&click&,
13.&&&&&&&&&&&&name&:&公交查询&,
14.&&&&&&&&&&&&key&:&gongJiao&
15.&&&&&&&&},
16.&&&&&&&&{
17.&&&&&&&&&&&&type&:&click&,
18.&&&&&&&&&&&&name&:&翻译&,
19.&&&&&&&&&&&&key&:&fanYi&
20.&&&&&&&&}]
23.&&&&&&&&name&:&苏州本地&,
24.&&&&&&&&sub_button&:[
25.&&&&&&&&{
26.&&&&&&&&&&&&type&:&click&,
27.&&&&&&&&&&&&name&:&爱上苏州&,
28.&&&&&&&&&&&&key&:&loveSuzhou&
29.&&&&&&&&},
30.&&&&&&&&{
31.&&&&&&&&&&&&type&:&click&,
32.&&&&&&&&&&&&name&:&苏州景点&,
33.&&&&&&&&&&&&key&:&suzhouScenic&
34.&&&&&&&&},
35.&&&&&&&&{
36.&&&&&&&&&&&&type&:&click&,
37.&&&&&&&&&&&&name&:&苏州美食&,
38.&&&&&&&&&&&&key&:&suzhouFood&
39.&&&&&&&&},
40.&&&&&&&&{
41.&&&&&&&&&&&&type&:&click&,
42.&&&&&&&&&&&&name&:&住在苏州&,
43.&&&&&&&&&&&&key&:&liveSuzhou&
44.&&&&&&&&}]
47.&&&&&&&&type&:&click&,
48.&&&&&&&&name&:&联系我们&,
49.&&&&&&&&key&:&lianxiUs&
示例说明:
菜单结构及说明:
02.&&button&:[&&&&&&&&&&&& //button定义该结构为一个菜单
04.&&&&&&&&name&:&分支主菜单名&,  
05.&&&&&&&&sub_button&:[    //sub_button定义子菜单
06.&&&&&&&&{
07.&&&&&&&&&&&&type&:&click&,  //按钮类型
08.&&&&&&&&&&&&name&:&分支子菜单名1&,  //菜单名称
09.&&&&&&&&&&&&key&:&loveSuzhou&  //菜单key值
10.&&&&&&&&},
11.&&&&&&&&{
12.&&&&&&&&&&&&type&:&click&,
13.&&&&&&&&&&&&name&:&分支子菜单名2&,
14.&&&&&&&&&&&&key&:&liveSuzhou&
15.&&&&&&&&}]
16.&&&},    //菜单之间用 , 分隔
18.&&&&&&&&type&:&click&,
19.&&&&&&&&name&:&独立菜单&,
20.&&&&&&&&key&:&lianxiUs&
返回说明:
正确的Json返回结果:
{&errcode&:0,&errmsg&:&ok&}
提交菜单:
通过curl 提交以上的菜单数据,代码如下:
01.$MENU_URL=&&.$ACC_TOKEN;
03.$ch = curl_init();&
05.curl_setopt($ch, CURLOPT_URL, $MENU_URL);&
06.curl_setopt($ch, CURLOPT_CUSTOMREQUEST, &POST&);
07.curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);&
08.curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
09.curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 ( MSIE 5.01; Windows NT 5.0)');
10.curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
11.curl_setopt($ch, CURLOPT_AUTOREFERER, 1);&
12.curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
13.curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);&
15.$info = curl_exec($ch);
17.if (curl_errno($ch)) {
18.&&&&echo 'Errno'.curl_error($ch);
21.curl_close($ch);
23.var_dump($info);
运行结果:
测试结果:
菜单创建成功。
五、查询菜单
查询当前使用的自定义菜单结构。
请求地址:https://api./cgi-bin/menu/get?access_token=ACCESS_TOKEN
curl 代码如下:
01.$MENU_URL=&&.$ACC_TOKEN;
03.$cu = curl_init();
04.curl_setopt($cu, CURLOPT_URL, $MENU_URL);
05.curl_setopt($cu, CURLOPT_RETURNTRANSFER, 1);
06.$menu_json = curl_exec($cu);
07.$menu = json_decode($menu_json);
08.curl_close($cu);
10.echo $menu_
运行结果:
菜单查询成功。
六、删除菜单
取消当前使用的自定义菜单。
请求地址:https://api./cgi-bin/menu/delete?access_token=ACCESS_TOKEN
curl 代码如下:
01.$MENU_URL=&&.$ACC_TOKEN;
03.$cu = curl_init();
04.curl_setopt($cu, CURLOPT_URL, $MENU_URL);
05.curl_setopt($cu, CURLOPT_RETURNTRANSFER, 1);
06.$info = curl_exec($cu);
07.$res = json_decode($info);
08.curl_close($cu);
10.if($res-&errcode == &0&){
11.&&&&echo &菜单删除成功&;
13.&&&&echo &菜单删除失败&;
运行结果:
转载请注明出处:> >
北京优品致远信息技术有限公司,京城专业WEB软件系统开发商,优秀品质,致远千里。二次元同好交流新大陆
扫码下载App
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
下面教你怎么获取这个ACCESS_TOKEN: 访问这个链接 & &但是访问之前,把刚才让你记下来的AppId 还有 AppSecret 替换到链接里面,然后复制到浏览器地址栏,一访问,就返回几个数据,里面最长的那段就是我们要的ACCESS_TOKEN了。【当然,如果你还是不明白这个链接怎么替换,那我只能再写明白点了就是下面&】 要注意的是,这个ACCESS_TOKEN 是有时间限制的,超过了一定时间就会失效。就要重新获取;另外,如果你刚获取之后,又不小心获取了一次,那么前一次获取到的值会失效,第二次的值生效。 接下来教大家怎么创建菜单,代码如下:&?phpheader("Content-type: text/ charset=utf-8");define("ACCESS_TOKEN", 'NYD-0s6f4yBJecqJ6QAiH7Nivh_gnWhbjs5vY1BZ9zViZAkYfw0QL5cO5ILK7lS3BkUCUrwqlDqzU9OVMaDO44Vuju7ZhXjdpJk8PxHgNf7cTs7rp6dvm-KJSkdiufqbL5niZwHM0uWJVi0mnSLGZg');//创建菜单function createMenu($data){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "https://api./cgi-bin/menu/create?access_token=".ACCESS_TOKEN); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 ( MSIE 5.01; Windows NT 5.0)'); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_AUTOREFERER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $tmpInfo = curl_exec($ch); if (curl_errno($ch)) {
return curl_error($ch); } curl_close($ch); return $tmpI}$data = ' {
"button":[
"name":"时讯",
"sub_button":[
"type":"click",
"name":"即时新闻",
"key":"jsxw"
"type":"click",
"name":"财经早餐",
"key":"cjzc"
"type":"click",
"name":"焦点话题",
"key":"jdht"
"type":"view",
"name":"财经日历",
"url":"/dpool/stockv2/universal_calendar.php?vt=4"
"name":"说市",
"sub_button":[
"type":"click",
"name":"今日看盘",
"key":"jrkp"
"type":"view",
"name":"行情刷新",
"url":"http://XX/index.php/market/index"
"type":"click",
"name":"交易策略",
"key":"jycl"
"type":"click",
"name":"投资天地",
"key":"tztd"
"type":"click",
"name":"投资文库",
"key":"tzwk"
"name":"北鼎在线",
"sub_button":[
"type":"view",
"name":"关于我们",
"url":"http://www.index.php/article/index/id/114"
"type":"view",
"name":"最新活动",
"url":"http://www.index.php/article/index/id/115"
"type":"view",
"name":"参与爆料",
"url":"http://www.index.php/message"
] }';echo createMenu($data);//创建菜单?& 如代码所示,菜单有两种,一种是直接跳转到URL页面,即view;另一种,是发送指令,即click,说白了就是在客户端辅助用户的,可以看成一键发关键词。第一种很好做,填写好URL就完事了,用户点击菜单按钮,然后跳转到你填写的URL地址,缺点是URL地址不变,不够灵活。另一种就是发送指令,可以在公众账号接口开发(注意跟自定义菜单区别开)的时候,判断指令的内容,灵活处理并且动态输出不同的数据。 通过POST方式把菜单的数据发送到微信服务器,在浏览器中看到的返回提示中,你看到OK的字眼,那么就证明已经成功了。创建完菜单之后,由于微信客户端的缓存要24小时才清理一次,所以你要马上看到效果就需要重新关注你的公众账号。此时,你已经尝试到胜利的果实了。
下一次,我将告诉大家怎么利用自定义菜单动态获取图文。内容:1、一个THINKPHP搭建的微网站 2、自定义接口开发技术 &3、自定义菜单 & 关键词:THINKPHP、 微网站、XML 微信自定义接口 &微信自定义菜单 & &描述:用户在微信端选择指定栏目,自动获取微网站相关的若干条图文内容,每次更新都可以获取到不同的内容 更新太久没来看博客了,所以不知道那么多朋友关注,实在让我小有感动。有朋友提了问题,估计那么久已经解决了,抱歉不能及时回复。不过也不碍我在这里做一个统一回复。问:key要怎么设?答:这个问题我不明白具体是什么意思。我估计是搞不懂key实际上就是关键词的意思,key的值其实是随便设的,这个值相当于微信里面的关键词,类似于你手动输入关键词发送到公众平台获取内容,自定义菜单的key作用就是类似于给你一键输入关键词并发送。你要做的就是设置一个跟已存在的关键词不重复key的值,然后在处理关键词的代码里面给出相应的反馈。问:appid
appsecret怎么来的?答:这个在当时是服务号才有的,后来认证的订阅号也有。问:用了你的代码,为什么服务器返回错误答:你用的是我的appid跟appsecret获取到的access token执行的,而不是你自己的,这些参数是我的,给你用了会弄坏我的自定义菜单,所以参数我修改了部分,你要正常使用,必须用自己的参数,并且根据我说的步骤去进行。问:这段代码怎么使用答:你可以手动访问这段代码的页面的url就行了,比如代码页面的url是/index.php,你复制url到浏览器,然后访问,如果没有错误,自定义菜单就出来了。当然你也可以通过curl代码模拟请求这段代码页面的url。问:这些代码参数在哪里看来的?答:我也不记得了,估计是百度的吧,不过我现在已经学会了,在哪里看到其实已经不重要,重要的是你学习的方法。
最新个人博客&&更多好玩有趣的东西和你分享
阅读(121239)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_',
blogTitle:'手把手教会你微信公众平台自定义菜单开发——创建菜单',
blogAbstract:'\t一如既往的,关于微信公众平台的开发,不算出自大牛的代码,但是简单易懂适合刚入门的朋友。\t首先先介绍一下逻辑,因为发现很多朋友都不能看懂微信官方的文档,当然啦,这跟你是否认真看有关的,认真看总能看懂的,废话不说了。此时,我当你已经有一个已经申请到自定义菜单开发权限的微信服务号。首先,你要在后台开发模式下面找到你的AppId 还有 AppSecret并且记下来,然后通过这两个官方发放给你的ID去获取一个ACCESS_TOKEN【官方解释是:',
blogTag:'微信,自定义菜单,微网站,自定义开发',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:0,
publishTime:4,
permalink:'blog/static/',
commentCount:43,
mainCommentCount:30,
recommendCount:26,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'0',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}

我要回帖

更多关于 百度推送开发者中心 的文章

 

随机推荐