[TOC=1,4]
###使用系統分享操作
在微站模板使用 **{template 'common/header'}** **{template 'common/footer'}** 可以使用此方式執行分享操作.
微擎系統會為每個頁面或應用**自動生成分享內容**, 粉絲用戶可以隨意的將此內容進行分享(發送給朋友、分享到朋友圈或騰訊微博).
微擎系統為開發人員提供如下擴展功能:
#### 1. PHP 自定義分享數據
微擎系統會自動生成一個分享內容, 但是開發者也可以在 app 端的 PHP 代碼或 HTML 頁面中定義要分享的數據結構 $_share, 來替換微擎系統自動生成的分享數據.
$_share 結構如下:
```
<?php
$_share = array(
'title' => ?,
'link' => ?,
'imgUrl' => ?,
'content' => ?
);
?>
```
####2. js 自定義分享數據
在模板頁面 {template 'common/footer'} 之前定義 window.sharedata
```
<script>
sharedata = {
'title' : ?, //
'desc' : ?, //
'link' : ?, //
'imgUrl' : ? //
}
sharedata.success = function(){
// 自定義分享成功后執行的 js 代碼.
}
<script>
```
>> 示例
```
<script>
// 自定義分享數據的調用
sharedata = {
title: '微信JS-SDK Demo',
desc: '微信JS-SDK,幫助第三方為用戶提供更優質的移動web服務',
link: 'http://demo.open.weixin.qq.com/jssdk/',
imgUrl: 'http://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRt8Qia4lv7k3M9J1SKqKCImxJCt7j9rHYicKDI45jRPBxdzdyREWnk0ia0N5TMnMfth7SdxtzMvVgXg/0',
success: function(){
alert('xixi');
}
};
</script>
```
如果使用系統生成分享數據, 自定義回調方法, 請這么使用.
```
<script>
// 自定義分享數據的調用, 確保 sharedata 對象存在.
sharedata = {
success: function(){
alert('xixi');
}
};
// 或
sharedata = { };
sharedata.success = function(){
alert('xixi');
}
</script>
```
詳情參閱 ? [[dev:js:share|分享操作]]
#### 3. jssdk 接口調用
頁面中添加以下代碼, 用于調試
```
<script>
jssdkconfig.debug = true;
</script>
```
如果開發者想在微站頁面調用 jssdk 方法, 可以這樣:
```
<script>
// 自定義接口調用
require(['jquery'], function($){
wx.ready(function () {
// 圖片預覽
// 注意: 僅支持 DOM 選擇
$('#previewImage')[0].onclick = function () {
wx.previewImage({
current: 'http://img5.douban.com/view/photo/photo/public/p1353993776.jpg',
urls: [
'http://img3.douban.com/view/photo/photo/public/p2152117150.jpg',
'http://img5.douban.com/view/photo/photo/public/p1353993776.jpg',
'http://img3.douban.com/view/photo/photo/public/p2152134700.jpg'
]
});
};
});
});
</script>
```
### 純手工設置分享操作
不使用系統 **header** / **footer**, 需要在頁面調用 **{php echo register_jssdk(true);}** 注冊 **jssdk**.
具體 jssdk 方法調用請參見: [微信 JSSDK 開發文檔](http://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html)
>> 方法介紹
```
function register_jssdk($debug) // 參數 $debug 為 boolean, 是否使用調試.
```
>> 頁面調用示例
此示例, 自動注冊 jssdk, 如設置了分享借用, 將自動借用.
```
<html>
<head>
<title>測試 register_jssdk</title>
{php echo register_jssdk(true);} <!-- 放到其他引入的 js 之前 -->
</head>
<body>
<ul class="nav nav-tabs" style="margin-bottom: 10px;">
<li><a href="{php echo $this->createMobileUrl('store', array('op'=>'display'));}">全部商品</a></li>
<li class="active"><a href="{php echo $this->createMobileUrl('jssdk');}">分享測試</a></li>
</ul>
<script>
wx.ready(function () {
sharedata = {
title: '微信JS-SDK Demo',
desc: '微信JS-SDK,幫助第三方為用戶提供更優質的移動web服務',
link: 'http://demo.open.weixin.qq.com/jssdk/',
imgUrl: 'http://mmbiz.qpic.cn/mmbiz/icTdbqWNOwNRt8Qia4lv7k3M9J1SKqKCImxJCt7j9rHYicKDI45jRPBxdzdyREWnk0ia0N5TMnMfth7SdxtzMvVgXg/0',
success: function(){
alert('success');
},
cancel: function(){
alert('cancel');
}
};
wx.onMenuShareAppMessage(sharedata);
});
</script>
</body>
</html>
```
- 入門
- 系統安裝
- 接入公眾平臺
- 關鍵字回復
- 更上一層樓
- 編碼規范
- php編碼規范
- html&css編碼規范
- JavaScript編碼規范
- 系統概述
- 結構概述
- 入口腳本
- 微擎MVC
- URL路由&創建
- $_W&全局變量
- 加載器
- 錯誤處理
- 日志記錄
- 模板
- 模板標簽
- 數據調用
- 常用變量
- 手機端組件
- 概述及依賴
- 圖像上傳
- 彈出選項
- 后臺組件
- 概述及依賴
- 后臺文件上傳
- 富文本編輯器
- 系統鏈接選擇器
- 其它常用組件
- 數據庫
- 參數綁定
- 數據操作
- 主從配置
- 連接其它數據庫
- 緩存
- 配置
- 緩存操作
- Http請求
- 概述及依賴
- GET&POST請求
- 發送郵件
- 會員與積分
- 統一用戶中心
- 借用OAuth
- 積分操作
- 資料操作
- 卡券
- 營銷卡券
- 會員卡
- 消息響應
- 消息概述
- 消息響應
- 微信API
- 公眾號AccessToken
- 共享收貨地址(廢棄)
- 共享收貨地址(新)
- 粉絲標簽
- 客服消息
- 模板消息
- 粉絲信息
- 素材
- 群發
- 二維碼
- 在線支付
- 概述及依賴
- 發起支付(PHP)
- 發起支付(JS)
- 驗證支付
- 模塊
- 設計模塊
- 目錄結構
- module.php
- processor.php
- site.php
- receiver.php
- 模塊高級專題
- 自定義分享
- 智能應答
- 微信卡券
- 遠程附件
- 權限控制
- 特殊事件觸發模塊
- 粉絲信息
- 小程序
- 概述
- Uitl類
- 云服務
- 云API
- 系統接口
- 模塊云配置
- 云短信
- 云短信錯誤代碼
- 云短信發送函數
- 批量群發短信
- 應用推廣
- 懸賞文案
- 折扣碼
- 系統消息
- 開發者等級資料認證
- 應用標簽
- 模塊自動檢測訂閱支持
- 小程序
- 開發實例
- 參數設置
- 常見問題