微信官方更新了链接跳转微信小程序的功能,在点击链接后即可直接跳转到小程序页面。更新后的跳转则更加直接,缩短了转化路径,有效提升点击转化率,对于小程序运营人员来说,无疑是一大福利,但如何生成微信小程序链接呢?
微信小程序链接原来可以在小程序管理平台的工具菜单里手工生成,在2022.4.11号后,这个功能被微信官网删除了
现在生成微信小程序的链接只有通过微信官方提供的接口文档,自已动手生成微信小程序链接
自 2022 年 4 月 11 日起,URL Scheme有效期最长 30 天,不再支持永久有效的URL Scheme、不再区分短期有效URL Scheme与长期有效URL Scheme。若在微信外打开,用户可以在浏览器页面点击进入小程序。每个独立的URL Scheme被用户访问后,仅此用户可以再次访问并打开对应小程序,其他用户无法再次通过相同URL Scheme打开该小程序。 在本次规则调整生效前已经生成的URL Scheme,如果有效期超过30天或长期会被降级为30天有效,只能被1个用户访问,开始时间从调整日期开始计算
通过服务端接口可以获取打开小程序任意页面的 URL Scheme。适用于从短信、邮件、微信外网页等场景打开小程序。 通过 URL Scheme 打开小程序的场景值为 1065。
生成的 URL Scheme 如下所示:
weixin://dl/business/?t= *TICKET*
iOS系统支持识别 URL Scheme,可在短信等应用场景中直接通过 Scheme 跳转小程序。
Android系统不支持直接识别 URL Scheme,用户无法通过 Scheme 正常打开小程序,开发者需要使用 H5 页面中转,再跳转到 Scheme 实现打开小程序,跳转代码示例如下:
location.href = 'weixin://dl/business/?t= *TICKET*'
该跳转方法可以在用户打开 H5 时立即调用,也可以在用户触发事件后调用。每天生成 URL Scheme 和 URL Link 总数量上限为50万
PHP获取微信小程序链接示例 :
//获取access_token
$gwxcx_appid='wx111111111111111';
$gwxcx_secret='353634534634537242342342334242423';
$gwxcx_access_token_url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='$gwxcx_appid'&secret='.$gwxcx_secret;
$gwxcx_json = curl($gwxcx_access_token_url);
$gwxcx_json = json_decode($gwxcx_json, true);
$gwxcx_access_token = $gwxcx_json['access_token'];
$urlscheme_generate_url = "https://api.weixin.qq.com/wxa/generatescheme?access_token=" . $gwxcx_access_token;
$gwxcx_param = [
'jump_wxa'=>['path'=>'pages/index/index','query'=>'from=kdpjjump'],
'expire_type'=>1, //有效期类型型 0 uxitemstap时间戳 1 失效天数
'expire_interval'=>1
];
$urlscheme_generate_result = curl($urlscheme_generate_url, json_encode($gwxcx_param));
$urlscheme_generate_result = json_decode($urlscheme_generate_result, true);
$gwxcx_url = $urlscheme_generate_result['openlink'];
echo $gwxcx_url; //小程序链接
/**
* 使用CURL实现GET和POST请求
* @param string $url 请求地址
* @param mixed $post_data POST数据
* @return mixed
*/
function curl($url, $post_data = '', $port='', $ip='', $timeout = 5)
{
$ch = curl_init();
$header = array(
'Content-Type: application/json',
);
//curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
$port && curl_setopt($ch, CURLOPT_PORT, $port);
$ip && curl_setopt($ch, CURLOPT_INTERFACE, "$ip");
if(!empty($post_data)){
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
}
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
//curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
if($file_contents === FALSE ){
//return curl_getinfo($ch);
return "CURL Error:".curl_error($ch);
}
curl_close($ch);
return $file_contents;
}
自 2022 年 4 月 11 日起,URL Link有效期最长 30 天,不再支持永久有效的URL Link、不再区分短期有效URL Link与长期有效URL Link。若在微信外打开,用户可以在浏览器页面点击进入小程序。每个独立的URL Link被用户访问后,仅此用户可以再次访问并打开对应小程序,其他用户无法再次通过相同URL Link打开该小程序。 在本次规则调整生效前已经生成的URL Link,如果有效期超过30天或长期会被降级为30天有效,只能被1个用户访问,开始时间从调整日期开始计算。
通过服务端接口可以获取打开小程序任意页面的 URL Link。适用于从短信、邮件、网页、微信内等场景打开小程序。 通过 URL Link 从微信外打开小程序的场景值为 1194。当用户在微信内访问 URL Link ,会调整为开放标签打开小程序,场景值为1167。
生成的 URL Link 如下所示:
https://wxaurl.cn/*TICKET* 或 https://wxmpurl.cn/*TICKET*
每天生成 URL Link 总数量上限为50万,只能生成已发布的小程序的 URL Link。在微信内或者安卓手机打开 URL Link 时,默认会先跳转官方 H5 中间页,如果需要定制 H5 内容,可以使用云开发静态网站。
URL LINK 接口文档
https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/url-link/urllink.generate.html
//获取access_token
$gwxcx_appid='wx111111111111111';
$gwxcx_secret='353634534634537242342342334242423';
$gwxcx_access_token_url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='$gwxcx_appid'&secret='.$gwxcx_secret;
$gwxcx_json = curl($gwxcx_access_token_url);
$gwxcx_json = json_decode($gwxcx_json, true);
$gwxcx_access_token = $gwxcx_json['access_token'];
$urllink_generate_url = "https://api.weixin.qq.com/wxa/generate_urllink?access_token=" . $gwxcx_access_token;
$gwxcx_param = [
'path'=>'pages/index/index',
'query'=>'from=kdpjjump',
'expire_type'=>1, //有效期类型型 0 uxitemstap时间戳 1 失效天数
'expire_interval'=>1
];
$urllink_generate_result = curl($urllink_generate_url , json_encode($gwxcx_param));
$urllink_generate_result = json_decode($urllink_generate_result, true);
$gwxcx_url = $urllink_generate_result['url_link'];
echo $gwxcx_url; //小程序链接
/**
* 使用CURL实现GET和POST请求
* @param string $url 请求地址
* @param mixed $post_data POST数据
* @return mixed
*/
function curl($url, $post_data = '', $port='', $ip='', $timeout = 5)
{
$ch = curl_init();
$header = array(
'Content-Type: application/json',
);
//curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
$port && curl_setopt($ch, CURLOPT_PORT, $port);
$ip && curl_setopt($ch, CURLOPT_INTERFACE, "$ip");
if(!empty($post_data)){
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
}
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
//curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
if($file_contents === FALSE ){
//return curl_getinfo($ch);
return "CURL Error:".curl_error($ch);
}
curl_close($ch);
return $file_contents;
}
通过服务端接口可以获取打开小程序任意页面的 Short Link。适用于微信内拉起小程序的业务场景。通过 Short Link 打开小程序的场景值为 1179。
生成的 ShortLink 如下所示:
#小程序://小程序示例/示例页面/9pZvnVw3KMCQpVp
Link 将根据是否为到期有效与失效时间参数,分为**短期有效ShortLink ** 与 **永久有效ShortLink **:
单个小程序每日生成 ShortLink 上限为50万个(包含短期有效 ShortLink 与长期有效 ShortLink )
单个小程序总共可生成永久有效 ShortLink 上限为10万个,请谨慎调用。
短期有效ShortLink 有效时间为30天,单个小程序生成短期有效ShortLink 不设上限。
开发者可通过以下3种方式实现短信打开小程序:
通过URL Scheme实现
通过服务端接口或在小程序管理后台生成URL Scheme后,自行开发中转H5页面。
将带有中转H5链接的短信内容通过开发者自有的短信发送能力或服务商的短信服务进行投放,实现短信打开小程序。
通过URL Link实现
通过服务端接口生成URL Link。
直接将带有URL Link的短信内容通过开发者自有的短信发送能力或服务商的短信服务进行投放,实现短信打开小程序。
通过云开发静态网站实现
基于小程序 URL Scheme,在现有短信、邮件、网页等场景外,微信还支持通过 NFC 卡片快捷拉起小程序页面的能力。可用于智能设备的快速配网、快捷控制等场景。
该能力不受 URL Scheme 30 天有效期限制,且允许多个用户访问。
微信小程序链接生成后,极大的方便了小程序的分亨、推广、营销,根据本文介绍和微信官方的接口文档可以快速生成跳转小程序链接。