>  기사  >  위챗 애플릿  >  위챗 공개계정 개인화 메뉴 개발 사례

위챗 공개계정 개인화 메뉴 개발 사례

一个新手
一个新手원래의
2017-09-07 09:32:134194검색

WeChat 공개 계정의 개인화 메뉴 개발 예

개인화 메뉴를 사용하면 공개 계정의 다양한 사용자 그룹이 서로 다른 맞춤형 메뉴를 볼 수 있습니다. 이 인터페이스는 인증된 구독 계정 및 인증된 서비스 계정에 열려 있습니다. 사용자의 WeChat 클라이언트 버전은 iPhone 6.2.2, Android 6.2.4 이상이어야 합니다. 또한 당분간 다른 버전은 지원되지 않습니다. , 먼저 개인화된 메뉴를 정의해야 합니다.

개발자는 다음 조건을 통해 사용자에게 보이는 메뉴를 설정할 수 있습니다.

  1. 사용자 태그(개발자의 비즈니스 요구는 사용자 태그를 통해 완성될 수 있음)

  2. 성별

  3. 모바일 운영 시스템

  4. Region(사용자가 WeChat 클라이언트에서 설정한 지역)

  5. Language(사용자가 WeChat 클라이언트에서 설정한 언어)

맞춤 메뉴 일치 규칙 설명:

개인화 메뉴 업데이트가 덮어쓰여집니다.
예를 들어 공개 계정에서는 기본 메뉴, 개인 메뉴 1, 개인 메뉴 2, 개인 메뉴 3을 출시했습니다. 이후 사용자가 공식 계정 페이지에 접속하면 개인 메뉴 3부터 매칭이 시작됩니다. 개인 메뉴 3이 매칭에 성공하면 바로 개인 메뉴 3으로 돌아갑니다. 그렇지 않으면 메뉴가 나올 때까지 개인 메뉴 2를 계속해서 매칭을 시도합니다. 성공적으로 일치합니다.
위 매칭 규칙에 따라 메뉴의 유효 시간에 대한 혼란을 피하기 위해 개발자가 메뉴를 업데이트해야 하는 경우 전체 구성을 다시 릴리스해야 합니다.

이 예제의 프로젝트 구조는 이전 장의 파일 외에 개인 메뉴 처리를 위한 3개의 파일이 추가되었습니다.


addconditional_menu.php: 맞춤 메뉴 만들기

trymatch.php: 맞춤 메뉴 일치 테스트

delconditional_menu.php: 맞춤 메뉴 삭제

1. Personality 메뉴 커스터마이징을 위한 인터페이스는 https://api.weixin.qq.com/cgi-bin/menu/addconditional?access_token=ACCESS_TOKEN이며 포스트 모드에서 메뉴 문자열이 전송됩니다.

addconditional_menu.php

<?php
require_once(&#39;./Utils.php&#39;);
//个性化菜单字符串
$menujson = &#39;{
	"button":[
 	{
    	"type":"click",
    	"name":"单击",
     	"key":"V1001_TODAY_MUSIC"
	},
	{
		"name":"搜素",
		"sub_button":[
            {
                "type":"view",
                "name":"百度",
                "url":"http://www.baidu.com/"
            }
        ]
 }],
 "matchrule":{
  "sex":"1"
  }
}&#39;;
$url = "https://api.weixin.qq.com/cgi-bin/menu/addconditional?access_token=".Utils::get_access_token();
//创建个性化菜单
$result = Utils::https_request($url, $menujson);
//返回返回menuid表示成功
echo $result;

반환된 결과는 다음과 같습니다.

메뉴를 보면 아래와 같이 기본 메뉴에서 맞춤 메뉴로 변경된 것을 확인할 수 있습니다.

성별 필터링만 여기에서 설정하면 1은 남성을 의미합니다. 기타 조건 설정은 개인 메뉴 인터페이스를 참조하세요.

2. 맞춤형 메뉴 일치 결과 테스트

테스트 인터페이스는 https://api.weixin.qq.com/cgi-bin/menu/trymatch?access_token=ACCESS_TOKEN입니다. 과거에 "user_id"를 게시해야 합니다. .

trymatch.php

<?php
    @header(&#39;Content-type: text/plain;charset=UTF-8&#39;);
    require_once(&#39;./Utils.php&#39;);
    $url = "https://api.weixin.qq.com/cgi-bin/menu/trymatch?access_token=".Utils::get_access_token();
    //user_id可以是粉丝的OpenID,也可以是粉丝的微信号
    $userID = &#39;{"user_id":"o4WmZ0h-4huBUVQUczx2ezaxIL9c"}&#39;;
    $result = Utils::https_request($url, $userID);
    echo $result;
?>

반환된 결과는 다음과 같습니다.


3. 맞춤 메뉴 삭제

맞춤 메뉴 삭제 인터페이스는 https://api.weixin.qq.com/cgi-bin 입니다. /menu/ delconditional?access_token=ACCESS_TOKEN, 과거에 "menuid"를 게시해야 합니다.

delconditional_menu.php

<?php
    @header(&#39;Content-type: text/plain;charset=UTF-8&#39;);
    require_once(&#39;./Utils.php&#39;);
    $url = "https://api.weixin.qq.com/cgi-bin/menu/delconditional?access_token=".Utils::get_access_token();
    //menuid,个性化菜单的menuid
    $menuID = &#39;{"menuid":414784577}&#39;;
    $result = Utils::https_request($url, $menuID);
    echo $result;
?>

성공을 나타내기 위해 다음 결과가 반환됩니다.

4. 맞춤 메뉴 쿼리

일반 사용자 정의 메뉴 쿼리 인터페이스를 사용하여 기본 메뉴와 모든 맞춤 메뉴 정보를 얻으세요. 이전 장.


조회 결과는 다음과 같습니다.



여기의 메뉴ID는 이전 개인메뉴를 삭제하고 다시 초기화했기 때문에 위와 다릅니다.

5. 모든 메뉴 삭제


모든 맞춤 메뉴(기본 메뉴 및 모든 맞춤 메뉴 포함)를 삭제하려면 일반 맞춤 메뉴 삭제 인터페이스를 사용하세요.

위 내용은 위챗 공개계정 개인화 메뉴 개발 사례의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.