您的位置: 三亚汇经典收藏 > 查看内容

thinkphp5微信分享代码

 
sanyahui 发表于 2018-05-02 15:56:21 | 点击:
 
有时候当一个项目或工程需要微信端分享之后做一系列事件时那么我们就需要获取并控制微信分享这个动作。
 
比如说分享出去的链接是我们指定的链接或分享的描述跟标题和图片我们需要自定义,那么走微信默认的分享显然是不行的。
 
所以我们需要自己动手来配置微信分享,当用户分享时走的是我们预定好的程序那么我们就可以轻松实现分享之后所做的事情。
 
以下虽然是基于thinkphp5做的微信分享 但是代码无论放在哪里都是可以用的哦。
 
以下步骤默认已经在微信公众号设置好了 js安全域名 不然是会报错的哦。
 
 
1、在公共配置文件写入以下配置项:
//微信配置
'wechat' => [
    'appid'=>'', // 微信支付appid
    'appSecret'=>'',    // 公众帐号secert
],
 
2、将 获取到的 Jssdk类 放入 \extend文件夹下 
 
需要 \utild\Jssdk类 的朋友加入资源鸟交流群623918245就可以获得啦!
 
 
3、在任意控制器加入以下代码(个人建议写在基类里  需要实现微信分享的类都可以继承)
//读取微信配置
$options = config('wechat');
$weObj = new \utild\Jssdk($options['appid'],$options['appSecret']);
 
//微信分享
$wechat = $weObj->GetSignPackage();
 
$this->assign(array('signPackage'=>$wechat));
 
4、把以下的代码拷贝到一个html文件(个人建议放在公共文件夹下 比如public/share.html  在有需要微信分享的模板中通过模板标签{include file="public/share"}来引入)
<script type="text/javascript" src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
<script type="text/javascript"> 
function WeChat(title,ShareLink,ShareImgUrl,desc,backUrl){
        // 微信配置
        wx.config({
            debug: false, 
            appId: "{$signPackage['appId']}",  //公众号的唯一标识
            timestamp: '{$signPackage["timestamp"]}',  //生成签名的时间戳
            nonceStr: '{$signPackage["nonceStr"]}',   //生成签名的随机串
            signature: '{$signPackage["signature"]}',  //签名
            jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage','onMenuShareQQ','onMenuShareQZone','hideOptionMenu'] // 功能列表,我们要使用JS-SDK的什么功能
        });
     
    wx.ready(function(){
        // 获取"分享到朋友圈"按钮点击状态及自定义分享内容接口
        wx.onMenuShareTimeline({
            title: title, // 分享标题
            link:ShareLink,
            desc:desc,
            imgUrl:ShareImgUrl, // 分享图标
            success: function () {
                window.location.href=backUrl;
            },
            cancel: function () {
               return false;
            }
        });
 
        // 获取"分享给朋友"按钮点击状态及自定义分享内容接口
        wx.onMenuShareAppMessage({
            title: title, // 分享标题
            desc: desc, // 分享描述
            link:ShareLink,
            imgUrl:ShareImgUrl, // 分享图标
            success: function () {
                    window.location.href=backUrl;
            },
            cancel: function () {
               return false;
            }
        });
        // 分享到QQ
        wx.onMenuShareQQ({
            title: title, // 分享标题
            desc:desc, // 分享描述
            link:ShareLink,
            imgUrl:ShareImgUrl, // 分享图标
            success: function () {
                window.location.href=backUrl;
            },
            cancel: function () {
               return false;
            }
        });
        // 分享到QQ空间
        wx.onMenuShareQZone({
            title: title, // 分享标题
            desc: desc, // 分享描述
            link:ShareLink,
            imgUrl:ShareImgUrl, // 分享图标
            success: function () {
                window.location.href=backUrl;
            },
            cancel: function () {
               return false;
            }
        });
    });
}
  
WeChat('资源鸟,让编程变得简单',"分享之后点进来的链接","图片地址",'资源鸟,让编程变得简单 群号:623918245',"分享后跳转的链接");
 
 
以上就是 thinkphp5史上最简单的微信分享代码(实例) 的全部内容
更多相关内容请关注 资源鸟论坛  https://www.ziyuanniao.com
 
如果觉得我的帖子对您有用,请随意赞赏。您的支持将鼓励我继续创作!
本文地址:
文章标题:thinkphp5微信分享代码