技术分享:把任意内容放到视频号扩展链接中
大家好,我是小杨Yanng,金融行业技术从业者,第二期 TikTok 训练营学员,目前粉丝500k左右,喜欢用技术解决问题,目前维护一款小工具「时光监控」,欢迎各位大佬来撩。
更完整的图文消息,可以点击这里查看:链接
一、缘起
8月的某一天,我正在外面跑步,荣禄哥给我转了个小程序,并告诉我这也是个不错的方向。
真幸运加入生财有术,总有那么多大佬在默默的指点着我们,让我受益匪浅,当天我和链接 荣禄哥并没有聊太多,可能也是因为我的内向性格把,所以在这里我要非常感谢荣禄哥的支持。
种子埋下了,后面就是要生根发芽了,因为公司一直比较忙,最近才抽时间研究了下视频号扩展链接的生成方法,理论上链接页面支持任意内容,目前整个流程已经跑通,分享出来,希望对大家有所帮助。
二、视频号支持什么样的链接?
视频号添加扩展链接页面,上面有一行重要说明,支持添加公众号文章链接,就是下面这货。
公众号文章链接我验证了几种情况,结果如下:
临时链接:图文素材库里未发布的文章,点击标题打开后提示「此为临时链接,仅用于预览,将在短期内失效。」,不支持,就是下面这样。
非群发永久链接:图文素材库里未发布的文章,通过给公众号用户发送图文消息的方式获取的链接,这种链接打开后不显示临时链接,但是依然没用,不支持。
官方接口生成永久链接:通过调用微信官方提供的「新增永久素材」接口生成的文章,是永久链接,这个和上一个效果一样,依然不支持。
群发后永久链接:还有最有一个办法,那就是老老实实的群发图文消息吧,再有问题就说不过去了,支持。但是这里有个问题,订阅号每天只能群发一次,服务号一个月才能群发4次,这根本不够用啊?没关系,后面我会解释如何绕过这个限制。
三、从一个推广链接开始分享整个过程
把一个商品推广链接转换成视频号扩展链接,从产品实现的角度给大家分享下整个流程,可能会有点枯燥,如果你想直接体验这个功能,那么就直接看第五章「直接体验」。
1、选择推广链接
以「京粉精选」小程序为例,随便选一个商品,点击分享,复制文字。获取到的链接为:链接
2、获取推广信息
打开推广链接,从页面中获取关键信息:
商品名称:蒙牛特仑苏有机纯牛奶3.8g蛋白质含量升级250ml*10 梦幻盖礼盒装
券后价格:68.00元
图片地址:链接
商品地址:链接
ok,就这些够了。
另外,这一步同步做了爬虫进行数据爬取,不能每次都手动获取这些信息,实在是太麻烦了,爬虫细节如果想了解的,可以单独找我要。
3、生成永久素材(接口调用)
上传图片
官方要求:图文消息的具体内容中,微信后台将过滤外部的图片链接,图片url需通过"上传图文消息内的图片获取URL"接口上传图片获取
也就是说永久素材中的图片必须先传到腾讯服务器才可以使用,这里推荐使用「上传图文消息内的图片获取URL」接口进行图片上传,因为不占用公众号的素材库中图片数量。
上传成功后,可实时获得图片 url 地址,这一步搞定。
补充:图文封面还需要一张图片,但是只支持通过 thumb_media_id 进行指定,因为封面基本没人看,所以这里是可以随便上传一张照片,调用接口「新增其他类型永久素材」,获取media_id和图片 url 即可。
组装图文素材内容
这一步主要是根据之前获取的商品信息,组装成一个 html 页面,也就相当于你用微信公众号后台富文本编辑器编辑的文章内容。
为了快速实现效果,在网上找了个页面源码。
效果如下:
生成永久素材
一切准备就绪,调用腾讯「新增永久图文素材」接口,进行文章上传,上传成功后,获取接口返回的当前素材的 media_id 。
4、群发消息(接口调用)
通过以上三步我们获得了一个永久图文素材的 media_id ,这个时候打开微信公众号后台,已经可以看见素材了。
微信官网提供了两种群发消息接口,根据OpenID列表进行群发和根据标签进行群发,我以第一种方式举例,如下
根据OpenID列表群发(目前在用)
直接看接口文档,比较好理解
media_id:用于群发的图文消息的 media_id。第三步获取的 media_id 派上用场了,群发图文消息只能使用永久素材的 media_id 所以一定要保存好。
touser:填写图文消息的接收者,一串OpenID列表,OpenID最少2个。可以用自己的微信小号。
请求发送成功后,返回值的结果里居然没有地址,这。。。
这里需要注意下,群发接口由于发送的用户量比较大,所以实时返回的结果只能代表腾讯服务器接收成功了,然后由腾讯后台批量发送给客户,至于群发的真正结果,这个接口是拿不到的,所以有了第五步,此步骤需要保存关键数据 msg_id 。
5、获取永久链接(提供接口)
这一步和步骤三、四不太一样,这一步是提供一个接口服务,待腾讯服务器群发消息结束后被调用。
以下摘自腾讯接口文档
由于群发任务提交后,群发任务可能在一定时间后才完成,因此,群发接口调用时,仅会给出群发任务是否提交成功的提示,若群发任务提交成功,则在群发任务结束时,会向开发者在公众平台填写的开发者URL(callback URL)推送事件。
贴一下腾讯返回的示例报文(太长,删除了部分不重要的节点)
终于,看到了我们想要的文章地址了,哈哈哈,赶紧复制出来贴到扩展链接里试试。
嗯????为什么还是不能用???骗子。。。
其实我们还有最后一步,把地址中的 http 替换成 https 就大功告成了。
PS:这里面的 MsgID 和第四步获取的 msg_id 可以做唯一匹配,用来标识是同一篇文章。
6、小结
a.以上案例都是基于服务号展开的,思路相通,订阅号感兴趣的可以自己尝试下
b.第一步和第二步主要是获取推广信息,这块需要考虑推广链接的有效时长,如果失效了如何处理,是通过中间页还是活码看个人需要
c.在公众平台官网群发消息(不管本次群发是对全体还是对某个分组),认证订阅号一天最多群发一次,认证服务号一个月最多四次,这个控制确实比较严格。但是第三步和第四步是调用腾讯提供的接口,在 is_to_all 为 false 的情况下,只会受接口调用次数限制,群发消息接口支持调用次数最大为1000次,也就说一个账号一天最多可以生成1000个扩展链接。
四、举一反三
第三步生成永久素材是整个流程中很关键的一步,生成的内容是点击扩展链接后展示给用户第一眼看到的页面。
本案例只是生成了一个简单的图文素材,里面的内容就比较有想象力了,可以放文字、图片、视频、小程序等等,原文链接可以放任意地址,怎么样,是不是我标题说的,任意内容都可以生成视频号扩展链接啦,嘿嘿。
当然最重要的一点,内容要合规呀。
五、直接体验
有些球友可能直接看到了这里,毕竟上面的内容有点烦呀。
所以我在自己公众号加了这个功能,供大家体验。
公众号:九零后网络
点击公众号菜单栏->工具箱->扩展链接 开始使用,效果图:
六、写在最后
微信号:ly55546564(添加请备注:生财有术)
公众号:九零后网络
视频号:如果各位大佬不嫌弃,求一波互相关注,哈哈哈,图片在下面。
第一次写这么长的文章,如果文章中有错误或者不足的地方,欢迎各位大佬批评指正,我会及时修复。





