(我在thinkphp的官网和QQ空间更新过)关于微信分享,即微信名片式的链接(如下图)图片,首先需要有经过验证的微信公众号,否则是玩不来的。
制作这种名片式的分享链接的步骤如下:
1、需要在公众号里绑定域名(一个公众号限定绑定三个域名,一天也只能修改三次),开通开发者模式,把里面的AppId和AppSecret记录下来,后面会用到;
2、下载腾讯官方的API文件(Demo包有4个文件,不过我们需要的是其中的3个php文件:jssdk.php、jsapi_ticket.php),这三个文件是怎样的,自己去查腾讯微信的API文档吧。别忘了在jssdk.php中添加命名空间:
namespace Home\Controller;
use Think\Controller;
否则会出现找不到JSSDK类的情况;
3、接下来是非常粗糙的写法,基于目前对命名空间的使用和对thinkphp的公共函数用法以及类的继承和构造函数的使用不熟悉的前提,我把所有的关联代码都写在了同一个控制器文件中,什么都不用说,直接上代码:
<?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
    public function index(){
                /*******************************************下面是微信分享的代码***********************************************/
 // 因为不熟悉命名空间的使用,我直接把微信的API文件放在和这个控制器文件同一级的Controller目录下
                include(\'jssdk.php\');         
$jssdk = new JSSDK("wxf352c30e8350b48a","28e56c1a1ea8aefdfd2e700853bef8c9");
$wxconfig = array();
$wxconfig = $jssdk ->GetSignPackage();
 
$this->assign(\'wxconfig\',$wxconfig);
               /************************************************************************************************************************/

if(empty($_POST)){
//echo "wrong";
$this->display();
}else{
$submit=M("User");
if (!$submit->autoCheckToken($_POST)){
         // 令牌验证错误
         //return false;
         //echo "表单信息重复提交了";
         $this->display();
 
         }else{
         $get["username"]=$_POST["name"];
            $get["telphone"]=$_POST["mobile"];
            $submit->add($get);
             //$name=md5($get["username"]);//字符加密
             //echo $get["username"]."<br>".$get["telphone"];
         }
                $this->display();
}
    }

 
 4、在模板文件Index.html中导入jweixin-1.0.0.js文件和添加如下代码:
<!--微信分享代码-->
<script>
wx.config({
    appId: \'{$wxconfig["appId"]}\',
    timestamp: {$wxconfig["timestamp"]},
    nonceStr: \'{$wxconfig["nonceStr"]}\',
    signature: \'{$wxconfig["signature"]}\',
   jsApiList: [
        \'checkJsApi\',
        \'onMenuShareTimeline\',
        \'onMenuShareAppMessage\',
        \'onMenuShareQQ\',
        \'onMenuShareWeibo\'
      ]
  });
  /*
 * 注意:
 * 1. 所有的JS接口只能在公众号绑定的域名下调用,公众号开发者需要先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。
 * 2. 如果发现在 Android 不能分享自定义内容,请到官网下载最新的包覆盖安装,Android 自定义分享接口需升级至 6.0.2.58 版本及以上。
 *
 * 如有问题请通过以下渠道反馈:
 * 邮箱地址:weixin-open@qq.com
 * 邮件主题:【微信JS-SDK反馈】具体问题
 * 邮件内容说明:用简明的语言描述问题所在,并交代清楚遇到该问题的场景,可附上截屏图片,微信团队会尽快处理你的反馈。
 */
wx.ready(function () {
  var options = {
title: \'上海红酒交易中心-微红酒(华南运营中心)\',
link: \'www.gxjft.com\',
imgUrl: \'http://www.gxjft.com/Public/logo.png\',        //必须使用绝对路径
desc: \'上海红酒交易中心,我国第一家红酒电子交易平台,也是亚洲第一家红酒交易中心。\',
success: function(){
console.info(\'分享成功!\');
},
cancel: function(){
console.info(\'取消分享\');
}
  }
    
  
  wx.onMenuShareAppMessage(options);
  wx.onMenuShareTimeline(options);
  wx.onMenuShareQQ(options);
  wx.onMenuShareWeibo(options);
});
wx.error(function (res) {
  alert(res.errMsg);
}); 
</script> 
以上就是微信分享制作的基本流程,因为对PHP还是不大熟悉,写出来的代码相当不简洁和漂亮,如果有什么遗漏的地方后面会补上和优化。
如果看不惯的话,可以访问这个网址:http://www.jb51.net/article/106174.htm。我都是从这里面捣鼓出来的。