自定义分享(公众号)
本文整理于网络,仅供阅读参考,如有不妥之处,敬请批评指正!如果您想加入微擎社区版技术大牛微信群和QQ群,请联系微信: ccccyyyy4444 或者 QQ:155120699
使用系统分享操作
在模板中包含微擎公共的头部和底部文件 {template ‘common/header’} 和 {template ‘common/footer’} 可以使用此方式执行分享操作.
微擎系统会为每个页面或应用 自动生成分享内容, 粉丝用户可以随意的将此内容进行分享(发送给朋友、分享到朋友圈或腾讯微博).
微擎系统为开发人员提供如下扩展功能:
在 PHP 中自定义分享数据
微擎系统会自动生成一个分享内容, 但是开发者也可以在 app 端的 PHP 代码或 HTML 页面中定义要分享的数据结构 $_share, 来替换微擎系统自动生成的分享数据,定义此数组的值即可
$_share 结构如下:
_php
$_share = array(
'title' => '?',
'link' => '?',
'imgUrl' => '?',
'content' => '?'
);
?>
在模板中自定义分享数据
在调用模板页面 {template ‘common/footer’} 之前定义 window.sharedata 变量
<script>
sharedata = {
'title' : '?',
'desc' : '?',
'link' : '?',
'imgUrl' : '?'
}
sharedata.success = function(){
// 自定义分享成功后执行的 js 代码.
}
<script>
示例
<script>
// 自定义分享数据的调用
sharedata = {
title: '微信JS-SDK Demo',
desc: '微信JS-SDK,帮助第三方为用户提供更优质的移动web服务',
link: 'http://demo.open.weixin.qq.com/jssdk/',
imgUrl: 'http://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRt8Qia4lv7k3M9J1SKqKCImxJCt7j9rHYicKDI45jRPBxdzdyREWnk0ia0N5TMnMfth7SdxtzMvVgXg/0',
success: function(){
alert('xixi');
}
};
</script>
未引用微擎公共头部底部模板定义分享
当没有引用微擎公共头部,底部模板时,首先需要在页面调用 {php echo register_jssdk(true);} 注册 jssdk。
具体 jssdk 方法调用请参见: 微信 JSSDK 开发文档
示例
此示例, 自动注册 jssdk, 如设置了分享借用, 将自动借用.
<html>
<head>
<title>测试 register_jssdk</title>
{php echo register_jssdk(true);} <!-- 放到其他引入的 js 之前 -->
</head>
<body>
<ul class="nav nav-tabs" style="margin-bottom: 10px;">
<li><a href="http://s.we7.cc" rel="external nofollow" >全部商品</a></li>
<li class="active"><a href="http://s.we7.cc" rel="external nofollow" >分享测试</a></li>
</ul>
<script>
wx.ready(function () {
sharedata = {
title: '微信JS-SDK Demo',
desc: '微信JS-SDK,帮助第三方为用户提供更优质的移动web服务',
link: 'http://demo.open.weixin.qq.com/jssdk/',
imgUrl: 'http://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRt8Qia4lv7k3M9J1SKqKCImxJCt7j9rHYicKDI45jRPBxdzdyREWnk0ia0N5TMnMfth7SdxtzMvVgXg/0',
success: function(){
alert('success');
},
cancel: function(){
alert('cancel');
}
};
wx.onMenuShareAppMessage(sharedata);
});
</script>
</body>
</html>
如果看不懂微擎社区版二次开发手册或者遇到问题,请联系微信: ccccyyyy4444 或者 QQ:155120699 ,如果我们有空闲时间,可以免费为您答疑解惑。