PHP微信自定义分享

工作需要,需要支持页面的微信自定义分享。查阅了一些资料后整理如下。最详尽的资料在微信官方文档微信公众平台,下面是针对PHP微信分享的小结和整理。

前置条件

1. 公众号支持微信自定义分享功能

首先要确保公众号支持自定义分享功能,具不完全考证,目前(2017.7)微信只支持认证过的公众号有分享功能。查看有无该功能,可在【开发】-【接口权限】中查看。 如图1和图2。


图1
图2

2. 公众号添加域名


图3

如图3,在【设置】-【公众号设置】的【功能设置】Tab页面,选择JS接口安全域名设置。


图4

在添加JS接口前,如图4,弹出的画面会提醒在域名根目录下添加文件,下载超链接的文件后上传至服务器,并确保路径可以访问后,再添加域名(注域名不带http:, 如http://www.baidu.com 应填写为 www.baidu.com)。

如果可以访问成功且域名有效,便可进行保存。同时会提示将服务器IP添加至白名单,按照提示可添加白名单,如果当时不确定IP地址,也可稍后再条件。

3. IP白名单添加

3.1 获取IP地址

   如果已经登录了服务器,可以在命令行输入ifconfig查看本机IP,eth1的inet addr项,如图5。


图5

如果没有登录服务器,可以通过Ping服务器的方式获取服务器IP。如图6。


图6

3.2 设置白名单

在【设置】-【安全中心】里面,选择IP白名单,查看,进行编辑,如图7和图8。


图7


图8

代码部分

1. 代码目录结构

示例代码给的结构前端PHP和后端处理代码在同一个目录结构下,实际项目中可根据需求进行修改。图9是一个示例:


图9

2. 后台代码

后台代码是示例代码的jssdk.php文件,里面向微信请求了access_token和ticket,微信示例代码中,将请求的结果写在文件里面进行缓存,每次调用分享时,从文件中读取有效时间,如果超时再重新请求。

3. 前台代码

3.1  appId和appSecret替换

前台代码是示例中的sample.php,其中需要注意的是appId,和appSecrect需要进行替换。appId在微信公众平台【设置】-【基本配置】里面,如图10,图11。


图10


图11

2.  代码部分,如图12。

第一步需要替换appId和appSecret,第二步需要填充自己需要的apilist,第三步是设置分享的调用函数。注意下面的代码是开了debug的,如果最终在正式环境上调用,需要把config.debug 设置为false。


图12

参考

微信公众平台

微信公众平台JSSDK分享接口开发(PHP实现)

PHP实现微信分享朋友圈demo

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容