对于经常在微信端推广的人来说,深有体会:直接发链接给对方的转化率远远不如卡片式链接。
原因嘛,大家都懂,潜意识里认为可疑链接风险较大。宁愿不点,也不会冒此风险。
实际上,卡片式和链接式只是展现形式不同罢了。
但卡片式的点击率远远高于链接式。

问题来了:怎么把链接转换成卡片式呢?
这里给大家总结了3个方案,可自己布局,也可直接使用。
涉及到个人域名安全,还是采用付费的形式比较妥当。一来,过滤一些伸手党;二来,不至于滥用,避免接口失效。
第一个方案(仅适用PC端)
把源码直接部署在自己的服务器,无需数据库,即传即用!
注:该工具仅支持在微信电脑版v3.4.0.50或以下中使用
详细教程:
首先本工具仅支持在微信电脑版v3.4.0.50或以下中使用,为大家提供了该版本,直接下载安装覆盖现有的微信即可!
然后打开部署的链接地址,复制到微信中打开,这里需要用电脑版微信打开!
打开链接之后,可以看到卡片预览、相关链接、和卡片信息栏目

我们在卡片信息中输入卡片的标题、简介、链接和图片链接地址,最后点击制作即可,之后在微信中,点击分享,将制作的卡片分享给你需要小伙伴。
优点:
部署简单,甚至不用部署直接使用现成的。
缺点:
仅支持在微信电脑版v3.4.0.50或以下中使用
第二个方案(未测试)
用半天时间找到的一个解决方法。同样是需要部署到服务器,只是我这边没有测试,不知最后的测试结果到底如何。有兴趣的小伙伴可自行测试。

后台代码:
wxshare.php 注意:使用此代码,只需要把wxshare.php文件下面的appid和secret换成自己的即可,appid对应的微信公众号必须有对应接口权限才能设置成功
<?php
header("Content-Type:text/html;charset=utf8");
header("Access-Control-Allow-Origin: *"); //解决跨域
header('Access-Control-Allow-Methods:POST'); // 响应类型
header('Access-Control-Allow-Headers:*'); // 响应头设置
$data = array();
$data['time'] = time();
$data['appid'] = 'XXX'; //appid
$data['secret'] = 'XXX'; //secret
$res = file_get_contents("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$data['appid']."&secret=".$data['secret']); //获得access_token
$ress = json_decode($res,True);
$access_token = $ress['access_token'];// 取出 至于存储代码就不列举了
$js = file_get_contents("https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=".$access_token."&type=jsapi");
$jss = json_decode($js,True);
$jsapi_ticket = $jss['ticket'];// 取出JS凭证, 至于存储代码就不列举了
//开始签名算法了
$sign = array();
$sign['noncestr'] = 'W99WZY08z0wzcjjkl'; //随意字符串 一会要传到JS里去.要求一致
$sign['jsapi_ticket'] = $jsapi_ticket;
$sign['timestamp'] = $data['time'];
$sign['url'] = $_POST['url'];//获取URL
ksort($sign);
$signature = '';
foreach($sign as $k => $v){
$signature .= $k.'='.$v.'&';
}
$signature = substr($signature, 0, strlen($signature)-1);
$data['signature'] = sha1($signature);// 必填,签名,见附录1
$data['nonceStr'] = $sign['noncestr'];
$response = array('code' => 0, 'message' => '请求成功', 'data' => $data);
echo json_encode($response);
前端代码:
share.html 使用此代码,需要把自定义的标题、描述、连接(链接域名需要在微信公众号后台添加安全域名才会生效,否则会失败)、缩略图设置自己的即可
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>分享页面标题XXX</title>
<script src='https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.js'></script>
<script src="http://res2.wx.qq.com/open/js/jweixin-1.6.0.js"></script>
</head>
<body>
<button onclick="create_code()">生成二维码</button>
<img id="code" src="" alt="" style="display: none;">
<script type="text/javascript">
$(document).ready(function(){
$.ajax({
type:"POST",
url:'wxshare.php',
data: {url: window.location.href},
success:function(result){
var result = JSON.parse(result);
// console.log(result);
// 检测是否拥有权限
// wx.checkJsApi({
// jsApiList: ['updateAppMessageShareData'], // 需要检测的 JS 接口列表,所有 JS 接口列表见附录2,
// success: function(res) {
// alert(JSON.stringify(res));
// }
// });
wx.config({
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId: result.data.appid, // 必填,公众号的唯一标识
timestamp: result.data.time, // 必填,生成签名的时间戳
nonceStr: result.data.nonceStr, // 必填,生成签名的随机串
signature: result.data.signature,// 必填,签名,见附录1
jsApiList: ['updateAppMessageShareData'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
});
wx.ready(function(){
wx.updateAppMessageShareData({
title: '分享页面标题XXX', // 分享标题
desc: '分享页面描述XXX', // 分享描述
link: 'http://www.域名.com/xs/index.html', // 分享链接,该链接域名或路径必须与当前页面对应的公众号 JS 安全域名一致
imgUrl: 'http://www.域名.com/xs/static/logo.png', // 分享图标
// success: function () {
// alert('分享成功');
// },
// cancel: function () {
// alert('取消分享了');
// }
});
});
}
});
});
// 生成二维码
function create_code(){
$.ajax({
type:"POST",
url:'create_code.php',
data: {url: window.location.href},
success:function(result){
$('#code').attr('src',result);
$('#code').show();
}
});
}
</script>
<script>
</script>
</body>
</html>
生成二维码:
create_code.php 使用此代码,需要把域名更换为自己的即可
<?php
header("Content-Type:text/html;charset=utf8");
header("Access-Control-Allow-Origin: *"); //解决跨域
header('Access-Control-Allow-Methods:POST'); // 响应类型
header('Access-Control-Allow-Headers:*'); // 响应头设置
include 'phpqrcode/phpqrcode.php';
$value = $_POST['url']; //二维码内容
$errorCorrectionLevel = 'L';//容错级别
$matrixPointSize = 6;//生成图片大小
//生成二维码图片
$filename = 'phpqrcode/qrcodeimgs/'.time().'.png';
QRcode::png($value, $filename, $errorCorrectionLevel, $matrixPointSize, 2);
echo 'http://www.域名.com/xs/'.$filename;

上面都设置好之后,首先需要把要分享的页面生成二维码(点击页面生成二维码按钮即可),然后用微信扫一扫二维码进入页面后,点击右上角三个点分享给朋友既可看到自定义的卡片效果;
由于未测试,优缺点不明!
第三个方案(推荐)
也是我正在使用的方式,不限手机和电脑都能用。
个人使用的话,强烈推荐此方案。
需要部署到服务器,
1、导入数据库wxzdy_share.sql
2、打开db_config.php,修改里面的配置信息(数据库相关配置,公众号相关配置)
3、配置JS接口安全域名(到公众号后台配置,使用测试号请到测试号配置)
4、如果你是使用测试号,请关注测试号,仅限关注测试号的微信使用才有效果。
5、访问creat.html即可开始创建
如图,测试号配置安全域名,域名就是你当前用于搭建的域名,直接填域名,无需填https或http,结尾无需加斜杠。例如你的域名是www.qq.com,那就直接填www.qq.com

注意:系统会自动生成access_token.json、jsapi_ticket.json这两个文件,请不要删除,服务器需要有777权限。
此程序需要配合认证订阅号、认证服务号使用,没有的话就使用测试号使用。
测试号申请地址:https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index
无论是认证号还是测试号都要绑定JS接口安全域名,域名就是你安装本套程序的域名。
还有以一个小细节:index.php第21行的第21行的引入微信分享js的时候,我这里默认是引入了http,如果你的域名本身是强制https的话,你也需要将http改成https
还有重要的一点:如果使用测试号进行搭建,你还需要关注测试号的公众号,在测试号后台,有一个二维码,需要扫码关注,然后用扫码关注的那个微信进行访问分享页才能有效!
如果使用测试号进行搭建,你还需要关注测试号的公众号,在测试号后台,有一个二维码,需要扫码关注,然后用扫码关注的那个微信进行访问分享页才能有效!
优点:使用方便。
缺点:有一定门槛要求,比如说域名,认证公众号。。。
好了,以上就是微信分享卡片链接在线制作工具(3款)。不论有没有看懂,有需要部署或者想直接使用的朋友,欢迎来撩~
话可说在前头,付费服务哟~挣个幸苦钱儿
原创文章,作者:幸运周,如若转载,请注明出处:https://www.52thing.com/20437.html