xuduan

   最近母后一时兴起想弄一个微信网站来耍,我就花了几天时间给改一个网站给她用来做美食的分享啥的,然后还给她开了个公众号,各种编辑各种操作还想着要怎么帮她运营,结果她不太想用就是。。。哎,可惜我几个晚上的心血,不说了,难受。好了,接下来说正经的~

微信分享须知

1 个人公众号也可以微信分享
2 微信分享可以自定义图片,文字,描述等
3 分享可以是qq/qq空间/微信/微信朋友等
4 调用分享接口只是自定义内容,之后还要手动点击右上角转发才有效果【很重要】
5 前端调用时,这里我是用的旧接口,jweixin-1.4.0.js以后推荐用新接口,调用方法一样

微信分享流程

1 申请公众号和绑定开发者
2 申请公众号的appid 和 appsecret
3 后台通过JSSDK生成前端需要的参数
4 前端js引入即可调用

需要用的东东

微信官方文档

微信开发者工具

来人,把demo给朕抬上来

后台:

use app\common\logic\wechat\JSSDK;

//获取微信配置
$wechat_config = config(\'wx_config\');
$jssdk = new Jssdk($wechat_config[\'app_id\'], $wechat_config[\'app_secret\']);
$signPackage = $jssdk->GetSignPackage();
$this->assign(\'signPackage\', $signPackage);

前端:

<!--<script type="text/javascript" src="http://res.wx.qq.com/open/js/jweixin-1.3.0.js"></script>-->
<script type="text/javascript" src="http://res.wx.qq.com/open/js/jweixin-1.4.0.js"></script>
<script type="text/javascript">
// 微信分享
wx.config({
    debug: false,
    appId: \'{$signPackage["appId"]}\',
    timestamp: \'{$signPackage["timestamp"]}\',
    nonceStr: \'{$signPackage["nonceStr"]}\',
    signature: \'{$signPackage["signature"]}\',
    jsApiList: [
        // 所有要调用的 API 都要加到这个列表中
        \'onMenuShareTimeline\',//微信朋友圈(旧接口)
        \'onMenuShareAppMessage\',//微信好友(旧接口)
        \'onMenuShareQQ\',
        \'onMenuShareQZone\',
        // \'updateAppMessageShareData\',//微信好友(新接口) jweixin-1.4.0.js
        // \'updateTimelineShareData\',//微信朋友圈(接口)
    ]
});

// 微信分享全家桶
function share_all(title, desc, link, imgUrl) {

    // 分享到微信好友
    wx.onMenuShareAppMessage({
        title: title, // 分享标题
        desc: desc, // 分享描述
        link: link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
        imgUrl: imgUrl, // 分享图标 图片大小要大于300pix才能显示
        type: \'\', // 分享类型,music、video或link,不填默认为link
        dataUrl: \'\', // 如果type是music或video,则要提供数据链接,默认为空
        success: function () {
            // 用户点击了分享后执行的回调函数
            // alert(\'分享完成~\');
        },
        cancel: function () {
            // 用户取消分享后执行的回调函数
        }
    });

    // 分享到微信朋友圈
    wx.onMenuShareTimeline({
        title: title, // 分享标题
        link: link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
        imgUrl: imgUrl, // 分享图标 图片大小要大于300pix才能显示
        dataUrl: \'\', // 如果type是music或video,则要提供数据链接,默认为空
        success: function () {

        }
    });

    // 分享到QQ
    wx.onMenuShareQQ({
        title: title, // 分享标题
        desc: desc, // 分享描述
        link: link, // 分享链接
        imgUrl: imgUrl, // 分享图标
        success: function () {
            // 用户确认分享后执行的回调函数
        },
        cancel: function () {
            // 用户取消分享后执行的回调函数
        }
    });

    // 分享到QQ空间
    wx.onMenuShareQZone({
        title: title, // 分享标题
        desc: desc, // 分享描述
        link: link, // 分享链接
        imgUrl: imgUrl, // 分享图标
        success: function () {
            // 用户确认分享后执行的回调函数
        },
        cancel: function () {
            // 用户取消分享后执行的回调函数
        }
    });

}
	
	
	
	

// 调用微信分享
var title = \'测试 - 分享标题\';
var desc = \'测试 - 分享描述\';
var link = \'https://www.cnblogs.com\';
var imgUrl = \'http://common.cnblogs.com/images/logo/logo20170227.png\';
share_all(title, desc, link, imgUrl);

最后

关于,微信开通个人公众号还有公众号的一些操作,下次再讲,吃饭先~


(刚方法名写错了,吃完饭赶紧改过来~)

分类:

技术点:

相关文章: