menuCreate() - 自定義/個性化菜單創建
### 說明
```
menuCreate($menu)
```
### 參數
- **$menu** array() 菜單數據(結構如下)
click和view的請求結構示例:
```
array(
'button' => array( //一級菜單數組,個數應為1~3個
array(
'type' => 'click', //菜單的響應動作類型,view表示網頁類型,click表示點擊類型,miniprogram表示小程序類型
'name' => '今日歌曲', //菜單標題,不超過16個字節,子菜單不超過60個字節
'key' => 'V1001_TODAY_MUSIC' //click等點擊類型必須,菜單KEY值,用于消息接口推送,不超過128字節
),
array(
'name' => '菜單',
'sub_button' => array( //二級菜單數組,個數應為1~5個
array(
'type' => 'view',
'name' => '搜索',
'url' => 'https://www.we7.cc'
),
array(
'type' => 'miniprogram',
'name' => 'wxa',
'url' => 'https://pro.we7.cc', //view、miniprogram類型必須,網頁 鏈接,用戶點擊菜單可打開鏈接,不超過1024字節。 type為miniprogram時,不支持小程序的老版本客戶端將打開本url
'appid' => 'wx286b93c16bbf93ab', //小程序的appid(僅認證公眾號可配置)
'pagepath' => 'pages/we7team/index' //小程序的頁面路徑
),
array(
'type' => 'click',
'name' => '贊一下我們',
'key' => 'V1001_GOOD'
)
)
),
array(
'name' => 'view_limited',
'type' => '圖文消息',
'media_id' => 'MEDIA_ID2' //media_id類型和view_limited類型必須,調用新增永久素材接口返回的合法media_id
)
)
)
```
其他新增按鈕類型的請求結構示例:
```
array(
'button' => array(
array(
'name' => '掃碼',
'sub_button' => array(
array(
'type' => 'scancode_waitmsg',
'name' => '掃碼帶提示',
'key' => 'rselfmenu_0_0',
'sub_button' => array()
),
array(
'type' => 'scancode_push',
'name' => '掃碼推事件',
'key' => 'rselfmenu_0_1',
'sub_button' => array()
)
)
),
array(
'name' => '發圖',
'sub_button' => array(
array(
'type' => 'pic_sysphoto',
'name' => '系統拍照發圖',
'key' => 'rselfmenu_1_0',
'sub_button' =>array()
),
array(
'type' => 'pic_photo_or_album',
'name' => '拍照或者相冊發圖',
'key' => 'rselfmenu_1_1',
'appid' => 'wx286b93c16bbf93ab',
'pagepath' => 'pages/we7team/index'
),
array(
'type' => 'pic_weixin',
'name' => '微信相冊發圖',
'key' => 'rselfmenu_1_2',
'sub_button' =>array()
)
)
),
array(
'name' => '發送位置',
'type' => 'location_select',
'key' => 'rselfmenu_2_0'
),
array(
'name' => '圖片',
'type' => 'media_id',
'media_id' => 'MEDIA_ID1'
),
array(
'name' => '圖文消息',
'type' => 'view_limited',
'media_id' => 'MEDIA_ID2'
)
)
)
```
### 返回值
#### error
可用is_error判斷,詳見《錯誤處理》
#### success
自定義菜單:NULL
個性化菜單:menu_id值(如:405321107)
### 示例
```
$account_api = WeAccount::create();
$result = $account_api->menuCreate($menu);
print_r($result);
```
menuDelete() - 自定義/個性化菜單刪除接口
### 說明
```
menuDelete($menuid = 0)
```
### 參數
- **$menuid** int 菜單ID(若是個性化菜單)
### 返回值
#### error
可用is_error判斷,詳見《錯誤處理》
#### success
返回boolran值:true
### 示例
```
$account_api = WeAccount::create();
$result = $account_api->menuDelete($menu_id);
print_r($reault);
```
menuCurrentQuery() - 獲取自定義菜單配置
### 說明
```
menuCurrentQuery()
```
### 參數
無
### 返回值
#### error
可用is_error判斷,詳見《錯誤處理》
#### success
```
array
(
'is_menu_open' => 1, //菜單是否開啟,0代表未開啟,1代表開啟
'selfmenu_info' => array( //菜單信息
'button' => array( //菜單按鈕
array(
'type' => 'click', //菜單的類型
'name' => '今日歌曲', //菜單名稱
'key' => 'V1001_TODAY_MUSIC', //對于不同的菜單類型,value的值意義不同。官網上設置的自定義菜單: Text:保存文字到value; Img、voice:保存mediaID到value; Video:保存視頻下載鏈接到value; News:保存圖文消息到news_info,同時保存mediaID到value; View:保存鏈接到url。 使用API設置的自定義菜單: click、scancode_push、scancode_waitmsg、pic_sysphoto、pic_photo_or_album、 pic_weixin、location_select:保存值到key;view:保存鏈接到url
'sub_button' => array()
),
array(
'name' => '菜單',
'sub_button' => array(
array(
'type' => 'view', //菜單的類型
'name' => '搜索', //菜單名稱
'url' => 'https://www.we7.cc',
'sub_button' => array()
),
array(
'type' => 'miniprogram', //菜單的類型
'name' => 'wxa', //菜單名稱
'url' => 'https://pro.we7.cc',
'appid' => 'wx286b93c16bbf93ab',
'pagepath' => 'pages/we7team/index'
),
array(
'type' => 'click', //菜單的類型
'name' => '贊一下我們', //菜單名稱
'key' => 'V1001_GOOD',
'sub_button' => array()
)
)
)
)
)
)
```
### 示例
```
$account_api = WeAccount::create();
$default_menu_info = $account_api->menuCurrentQuery();
print_r($default_menu_info);
```
menuQuery() - 自定義菜單查詢
### 說明
```
menuQuery()
```
### 參數
無
### 返回值
#### error
可用is_error判斷,詳見《錯誤處理》
#### success
無個性化菜單時:
```
array(
'button' => array(
array(
'type' => 'click',
'name' => '今日歌曲',
'key' => 'V1001_TODAY_MUSIC',
'sub_button' => array()
),
array(
'name' => '菜單',
'sub_button' => array(
array(
'type' => 'view',
'name' => '搜索',
'url' => 'https://www.we7.cc',
'sub_button' => array()
),
array(
'type' => 'miniprogram',
'name' => 'wxa',
'url' => 'https://pro.we7.cc',
'appid' => 'wx286b93c16bbf93ab',
'pagepath' => 'pages/we7team/index'
),
array(
'type' => 'click',
'name' => '贊一下我們',
'key' => 'V1001_GOOD',
'sub_button' => array()
)
)
)
)
)
```
有個性化菜單時:
```
array(
'menu' => array(
'button' => array(
'type' => 'click',
'name' => '今日歌曲',
'key' => 'V1001_TODAY_MUSIC',
'sub_button' => array()
),
'menuid' => 208396938
),
'conditionalmenu' => array(
'button' => array(
array(
'type' => 'click',
'name' => '今日讀書',
'key' => 'V1001_TODAY_READING',
'sub_button' => array()
),
array(
'name' => '菜單',
'sub_button' => array(
array(
'type' => 'view',
'name' => '搜索',
'url' => 'http://www.soso.com/',
'sub_button' => array()
),
array(
'type' => 'view',
'name' => '視頻',
'url' => 'http://v.qq.com/',
'sub_button' => array()
),
array(
'type' => 'click',
'name' => '贊一下我們',
'key' => 'V1001_GOOD',
'sub_button' => array()
)
)
)
),
'matchrule' => array(
'group_id' => 2,
'sex' => 1,
'country' => '中國',
'province' => '廣東',
'city' => '廣州',
'client_platform_type' => 2
)
),
'menuid' => 208396993
)
注:menu為默認菜單,conditionalmenu為個性化菜單列表
```
### 示例
```
$account_api = WeAccount::create();
$result = $account_api->menuQuery();
print_r($result);
```