網(wǎng)頁(yè)鏈接分享到微信朋友圈帶圖標(biāo)和摘要的完美解決方法

先看效果:


我不喜歡回形針疚宇。

以前我僅僅把網(wǎng)頁(yè)開(kāi)始的地方放一個(gè)不可見(jiàn)的圖片窝稿,后來(lái)發(fā)現(xiàn)沒(méi)有效果。

現(xiàn)在我們開(kāi)始:

原料:GetwxLink

微信公眾號(hào):

聯(lián)系QQ:629359960




步驟一:綁定域名

先登錄微信公眾平臺(tái)進(jìn)入“公眾號(hào)設(shè)置”的“功能設(shè)置”里填寫(xiě)“JS接口安全域名”张弛。

步驟二:引入JS文件

<script src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>

<script>

? ? var? url=location.href;

? ? $.ajax({

? ? ? ? type : "get",

? ? ? ? url : "http://這里改為你自己的網(wǎng)址.com/jssdk.php?url="+url,

? ? ? ? dataType : "jsonp",

? ? ? ? jsonp: "callback",

? ? ? ? jsonpCallback:"success_jsonpCallback",

? ? ? ? success : function(data){

? ? ? ? ? ? wx.config({

? ? ? ? ? ? ? ? debug: false,

? ? ? ? ? ? ? ? appId: data.appId,

? ? ? ? ? ? ? ? timestamp: data.timestamp,

? ? ? ? ? ? ? ? nonceStr: data.nonceStr,

? ? ? ? ? ? ? ? signature: data.signature,

? ? ? ? ? ? ? ? jsApiList: [

? ? ? ? ? ? ? ? ? ? 'onMenuShareTimeline',//

? ? ? ? ? ? ? ? ? ? 'onMenuShareAppMessage',

? ? ? ? ? ? ? ? ? ? 'onMenuShareQQ',

? ? ? ? ? ? ? ? ? ? 'onMenuShareWeibo',

? ? ? ? ? ? ? ? ? ? 'onMenuShareQZone'

? ? ? ? ? ? ? ? ]

? ? ? ? ? ? });

? ? ? ? },

? ? ? ? error:function(data){

? ? ? ? ? ? alert("連接失敳萏怼!");

? ? ? ? }

? ? });

? ? wx.ready(function () {

? ? ? ? var shareData = {

? ? ? ? ? ? title: '這是是分享標(biāo)題',

? ? ? ? ? ? desc: '這是是摘要',

? ? ? ? ? ? link: url,

? ? ? ? ? ? imgUrl: '這里改為你網(wǎng)站域名下的小圖標(biāo)文件的地址'

? ? ? ? };

? ? ? ? wx.onMenuShareAppMessage(shareData);//分享給好友

? ? ? ? wx.onMenuShareTimeline(shareData);//分享到朋友圈

? ? ? ? wx.onMenuShareQQ(shareData);//分享給手機(jī)QQ

? ? ? ? wx.onMenuShareWeibo(shareData);//分享騰訊微博

? ? ? ? wx.onMenuShareQZone(shareData);//分享到QQ空間

? ? });

? ? wx.error(function (res) {

? ? ? ? //alert(res.errMsg);//錯(cuò)誤提示

? ? });

</script>

url : "http://這里改為你自己的網(wǎng)址.com/jssdk.php?url="+url,

<?php

$url = $_GET['url'];

class JSSDK {

? ? private $appId;

? ? private $appSecret;

? ? private $url;

? ? public function __construct($appId, $appSecret,$url) {

? ? ? ? $this->appId = $appId;

? ? ? ? $this->appSecret = $appSecret;

? ? ? ? $this->url = $url;

? ? }

? ? public function getSignPackage() {

? ? ? ? $jsapiTicket = $this->getJsApiTicket();

? ? ? ? $protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";

? ? ? ? // $url = "$protocol$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

? ? ? ? $url =$this->url;

? ? ? ? $timestamp = time();

? ? ? ? $nonceStr = $this->createNonceStr();

? ? ? ? // 這里參數(shù)的順序要按照 key 值 ASCII 碼升序排序

? ? ? ? $string = "jsapi_ticket=$jsapiTicket&noncestr=$nonceStr&timestamp=$timestamp&url=$url";

? ? ? ? $signature = sha1($string);

? ? ? ? $signPackage = array(

? ? ? ? ? ? "appId"? ? => $this->appId,

? ? ? ? ? ? "nonceStr"? => $nonceStr,

? ? ? ? ? ? "timestamp" => $timestamp,

? ? ? ? ? ? "url"? ? ? => $url,

? ? ? ? ? ? "signature" => $signature,

? ? ? ? ? ? "rawString" => $string

? ? ? ? );

? ? ? ? return $signPackage;

? ? }

? ? private function createNonceStr($length = 16) {

? ? ? ? $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";

? ? ? ? $str = "";

? ? ? ? for ($i = 0; $i < $length; $i++) {

? ? ? ? ? ? $str .= substr($chars, mt_rand(0, strlen($chars) - 1), 1);

? ? ? ? }

? ? ? ? return $str;

? ? }

? ? private function getJsApiTicket() {

? ? ? ? // jsapi_ticket 應(yīng)該全局存儲(chǔ)與更新靶壮,以下代碼以寫(xiě)入到文件中做示例

? ? ? ? $data = json_decode(file_get_contents("jsapi_ticket.json"));

? ? ? ? if ($data->expire_time < time()) {

? ? ? ? ? ? $accessToken = $this->getAccessToken();

? ? ? ? ? ? // 如果是企業(yè)號(hào)用以下 URL 獲取 ticket

? ? ? ? ? ? // $url = "https://qyapi.weixin.qq.com/cgi-bin/get_jsapi_ticket?access_token=$accessToken";

? ? ? ? ? ? $url = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?type=jsapi&access_token=$accessToken";

? ? ? ? ? ? $res = json_decode($this->httpGet($url));

? ? ? ? ? ? $ticket = $res->ticket;

? ? ? ? ? ? if ($ticket) {

? ? ? ? ? ? ? ? $data->expire_time = time() + 7000;

? ? ? ? ? ? ? ? $data->jsapi_ticket = $ticket;

? ? ? ? ? ? ? ? $fp = fopen("jsapi_ticket.json", "w");

? ? ? ? ? ? ? ? fwrite($fp, json_encode($data));

? ? ? ? ? ? ? ? fclose($fp);

? ? ? ? ? ? }

? ? ? ? } else {

? ? ? ? ? ? $ticket = $data->jsapi_ticket;

? ? ? ? }

? ? ? ? return $ticket;

? ? }

? ? private function getAccessToken() {

? ? ? ? // access_token 應(yīng)該全局存儲(chǔ)與更新怔毛,以下代碼以寫(xiě)入到文件中做示例

? ? ? ? $data = json_decode(file_get_contents("access_token.json"));

? ? ? ? if ($data->expire_time < time()) {

? ? ? ? ? ? // 如果是企業(yè)號(hào)用以下URL獲取access_token

? ? ? ? ? ? // $url = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$this->appId&corpsecret=$this->appSecret";

? ? ? ? ? ? $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$this->appId&secret=$this->appSecret";

? ? ? ? ? ? $res = json_decode($this->httpGet($url));

? ? ? ? ? ? $access_token = $res->access_token;

? ? ? ? ? ? if ($access_token) {

? ? ? ? ? ? ? ? $data->expire_time = time() + 7000;

? ? ? ? ? ? ? ? $data->access_token = $access_token;

? ? ? ? ? ? ? ? $fp = fopen("access_token.json", "w");

? ? ? ? ? ? ? ? fwrite($fp, json_encode($data));

? ? ? ? ? ? ? ? fclose($fp);

? ? ? ? ? ? }

? ? ? ? } else {

? ? ? ? ? ? $access_token = $data->access_token;

? ? ? ? }

? ? ? ? return $access_token;

? ? }

? ? private function httpGet($url) {

? ? ? ? $curl = curl_init();

? ? ? ? curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

? ? ? ? curl_setopt($curl, CURLOPT_TIMEOUT, 500);

? ? ? ? curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);

? ? ? ? curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);

? ? ? ? curl_setopt($curl, CURLOPT_URL, $url);

? ? ? ? $res = curl_exec($curl);

? ? ? ? curl_close($curl);

? ? ? ? return $res;

? ? }

}

$jssdk = new JSSDK("wx********************a", "*************************",$url);

$signPackage = $jssdk->GetSignPackage();

$tmp=json_encode(array ('appId'=>$signPackage["appId"],'timestamp'=>$signPackage["timestamp"],'nonceStr'=>$signPackage["nonceStr"],'signature'=>$signPackage["signature"],'url'=>$signPackage["url"]));

$callback = $_GET['callback'];

echo $callback.'('.$tmp.')';

exit;

?>

只要改一下這一行為你自己的:

$jssdk = new JSSDK("wx********************", "*************************",$url);

最后,別忘了存放這個(gè)PHP的文件夾權(quán)限為可寫(xiě)腾降。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市碎绎,隨后出現(xiàn)的幾起案子螃壤,更是在濱河造成了極大的恐慌抗果,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,406評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件奸晴,死亡現(xiàn)場(chǎng)離奇詭異冤馏,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)寄啼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,395評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門(mén)逮光,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人墩划,你說(shuō)我怎么就攤上這事涕刚。” “怎么了乙帮?”我有些...
    開(kāi)封第一講書(shū)人閱讀 167,815評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵杜漠,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我察净,道長(zhǎng)驾茴,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,537評(píng)論 1 296
  • 正文 為了忘掉前任氢卡,我火速辦了婚禮锈至,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘译秦。我一直安慰自己峡捡,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,536評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布诀浪。 她就那樣靜靜地躺著棋返,像睡著了一般。 火紅的嫁衣襯著肌膚如雪雷猪。 梳的紋絲不亂的頭發(fā)上睛竣,一...
    開(kāi)封第一講書(shū)人閱讀 52,184評(píng)論 1 308
  • 那天,我揣著相機(jī)與錄音求摇,去河邊找鬼射沟。 笑死,一個(gè)胖子當(dāng)著我的面吹牛与境,可吹牛的內(nèi)容都是我干的验夯。 我是一名探鬼主播,決...
    沈念sama閱讀 40,776評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼摔刁,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼挥转!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,668評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤绑谣,失蹤者是張志新(化名)和其女友劉穎党窜,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體借宵,經(jīng)...
    沈念sama閱讀 46,212評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡幌衣,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,299評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了壤玫。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片豁护。...
    茶點(diǎn)故事閱讀 40,438評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖欲间,靈堂內(nèi)的尸體忽然破棺而出楚里,到底是詐尸還是另有隱情,我是刑警寧澤括改,帶...
    沈念sama閱讀 36,128評(píng)論 5 349
  • 正文 年R本政府宣布腻豌,位于F島的核電站,受9級(jí)特大地震影響嘱能,放射性物質(zhì)發(fā)生泄漏吝梅。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,807評(píng)論 3 333
  • 文/蒙蒙 一惹骂、第九天 我趴在偏房一處隱蔽的房頂上張望苏携。 院中可真熱鬧,春花似錦对粪、人聲如沸右冻。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,279評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)纱扭。三九已至,卻和暖如春儡遮,著一層夾襖步出監(jiān)牢的瞬間乳蛾,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,395評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工鄙币, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留肃叶,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,827評(píng)論 3 376
  • 正文 我出身青樓十嘿,卻偏偏與公主長(zhǎng)得像因惭,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子绩衷,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,446評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容