この記事では、主に PHP WeChat 開発のカスタム メニュー実装コードを詳細に紹介します。興味のある友人は参照してください。
編集モードと開発モードの間には競合があります。したがって、WeChat 公式アカウントの開発モードを有効にすると、これらのメニューは表示されなくなります。ただし、現在、個人サブスクリプション アカウントではカスタム メニューなどの高度な開発者モードを使用できませんが、テスト アカウントを通じてテストし、コードをサービス アカウントに移動することはできます。
カスタム タイプには以下が含まれます:
1. クリック: クリック プッシュ イベント
• ユーザーがクリック タイプ ボタンをクリックした後、WeChat サーバーはメッセージ インターフェイスを通じてメッセージ タイプ イベント構造を開発者にプッシュします (参照)メッセージ インターフェイス ガイド) に移動し、開発者が入力したキー値をボタンに表示します。
2. ユーザーの後に、ビュー タイプ ボタンをクリックすると、WeChat クライアントは、開発者がボタンに入力した Web ページ URL を開きます。これを Web ページ認証インターフェイスと組み合わせて、基本的なユーザー情報を取得することができます。
• ユーザーがボタンをクリックすると、WeChat クライアントはスキャン ツールを起動し、スキャン コード操作が完了すると、スキャン結果が表示されます ( URL、URLが入力されます)、QRコードのスキャン結果が開発者に送信され、開発者はメッセージを送信できます。
コードをスキャンしてイベントをプッシュし、「メッセージ受信」プロンプトボックスをポップアップ表示します• ユーザーがボタンをクリックすると、コードのスキャン操作が完了すると、WeChat クライアントがスキャンツールを起動します。 、スキャンされたコードが開発者に送信され、同時にスキャン ツールが保管され、「メッセージ受信中」プロンプト ボックスが表示されます。
カスタマイズされたタイプには以下が含まれます:
5. pic_sysphoto: ユーザーがボタンをクリックすると、WeChat クライアントがシステム カメラを呼び出します。写真の操作が完了し、写真が撮影されました 開発者に送信し、イベントを開発者にプッシュし、同時にシステムカメラをしまいます。後で開発者からメッセージを受け取る場合があります。
6. pic_photo_or_album: 写真を撮るかアルバムから写真を投稿するためのポップアップ。ユーザーが「写真を撮る」または「」を選択するためのセレクターが表示されます。携帯電話のアルバムから選択してください。」ユーザーが選択すると、他の 2 つのプロセスが実行されます。
7. pic_weixin: ユーザーがポップアップ WeChat フォト アルバム送信者のボタンをクリックすると、選択操作が完了すると、WeChat クライアントが WeChat フォト アルバムを呼び出します。開発者のサーバーにイベントをプッシュし、フォト アルバムを閉じます。後で開発者からメッセージを受け取る場合があります。 コードが提供されています。コードをサーバーにアップロードし、公式アカウントを再フォローするだけで、開発モードでカスタムメニューが表示されます
$appid = '微信公众号的appid'; $appsecret = '微信公众号的appsecret'; $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$appid}&secret=$appsecret"; $output = https_request($url); $jsoninfo = json_decode($output,true); $access_token = $jsoninfo["access_token"]; $jsonmenu = '{ "button":[ { "name":"学校系统", "sub_button":[ { "type":"click", "name":"课程表", "key":"课程表" }, { "type":"click", "name":"个人信息", "key":"个人信息" }, { "type":"click", "name":"平时成绩", "key":"平时成绩" }, { "type":"click", "name":"奖惩记录", "key":"奖惩记录" } ] }, { "name":"技术分享", "sub_button":[ { "type":"click", "name":"移动WEB开发", "key":"移动WEB开发" }, { "type":"click", "name":"J2EE框架", "key":"J2EE框架" }, { "type":"click", "name":"Android开发", "key":"Android开发" }, { "type":"click", "name":"PHP框架", "key":"PHP框架" } ] },{ "name":"技术支持", "sub_button":[ { "type":"click", "name":"在线客服", "key":"在线客服" }, { "type":"click", "name":"技术分享", "key":"技术分享" }, { "type":"view", "name":"天气预报", "url":"http://m.hao123.com/a/tianqi" } ] } ] }'; //创建菜单实现 $url = 'https://api.weixin.qq.com/cgi-bin/menu/create?access_token='.$access_token; $result = https_request($url,$jsonmenu); var_dump($result); function https_request($url,$data = null){ $curl = curl_init(); curl_setopt($curl,CURLOPT_URL,$url); curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,0); curl_setopt($curl,CURLOPT_SSL_VERIFYHOST,0); if(!empty($data)){ curl_setopt($curl,CURLOPT_POST,1); curl_setopt($curl,CURLOPT_POSTFIELDS,$data); } curl_setopt($curl,CURLOPT_RETURNTRANSFER,1); $output = curl_exec($curl); curl_close($curl); return $output; }
上記がこの記事の全内容です。皆様の学習に役立てば幸いです。
関連推奨事項:
PHPはSina IPライブラリに基づいてIP詳細アドレスを取得するメソッドを実装します
以上がPHP は WeChat 開発用のカスタム メニューを実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。