} if (!$sub_button['keyurl']) { cpmsg(lang('plugin/wechat', 'wsq_menu_keyurl_empty'), '', 'error'); } $parse = parse_url($sub_button['keyurl']); $item = array('type' => $parse['host'] ? 'view' : 'click', 'name' => convertname($sub_button['name']), $parse['host'] ? 'url' : 'key' => $sub_button['keyurl']); $sub_buttons[] = $item; } $item = array('name' => convertname($button['name']), 'sub_button' => $sub_buttons); $pubmenu['button'][] = $item; } } require_once DISCUZ_ROOT . './source/plugin/wechat/wechat.lib.class.php'; $_G['wechat']['setting'] = unserialize($_G['setting']['mobilewechat']); $wechat_client = new WeChatClient($_G['wechat']['setting']['wechat_appId'], $_G['wechat']['setting']['wechat_appsecret']); if ($wechat_client->setMenu($pubmenu)) { cpmsg(lang('plugin/wechat', 'wsq_menu_pub_succeed'), 'action=plugins&operation=config&do=' . $pluginid . '&identifier=wechat&pmod=menu_setting', 'succeed'); } else { cpmsg(lang('plugin/wechat', 'wsq_menu_pub_error', array('errno' => $wechat_client->error())), '', 'error'); } } else { cpmsg('setting_update_succeed', 'action=plugins&operation=config&do=' . $pluginid . '&identifier=wechat&pmod=menu_setting', 'succeed'); } } function convertname($str) { return urlencode(diconv($str, CHARSET, 'UTF-8')); } function buttoncmp($a, $b) { return $a['displayorder'] > $b['displayorder'] ? 1 : -1;