关于个人微信公众开发之微信分享

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

微信分享须知

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);

最后

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


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

posted @ 2020-11-04 13:01  续断  阅读(376)  评论(0编辑  收藏  举报