微信自定义分享链接信息(标题,图片和内容)的实现教程

网页分享到微信要怎么才能自定义标题,内容和图片呢?

需求概述

微信中可以直接转发网页链接,用户在微信内置浏览器中打开后可以通过微信浏览器中右上角进行分享到朋友,朋友圈,QQ等。但直接这样分享的话,用户看到的只是一条链接,没有任何的图文内容。

如下图,图1是别人分享给我的链接效果,图2是我分享给别人的效果。两种方案的用户体验我想都不用我多说了,一眼就能看的出来.

方案实现

要达到上图自定义文案与图标的效果,必须要采用微信提供的JS-SDK,微信JS-SDK是微信公众平台面向网页开发者提供的基于微信内的网页开发工具包。可参考微信JS-SDK说明文档。(如果你不懂技术或者没有认证的公众号,使用wecard工具也可以实现相关的效果。)

具体步骤:

1、准备一个备案的域名和空间,绑定域名到该空间去。

2、登录微信公众平台,进入“公众号设置”的功能设置里面填写js接口安全域名,这个要填写的是你微信浏览器要打开的域名地址,不能添加IP地址。

3、引入js文件,在需要调用js接口的页面接入JS文件。

http://res.wx.qq.com/open/js/jweixin-1.2.0.js

4、通过config接口注入权限并验证配置(这一步算是整个步骤中最关键的一步,必须正确的配置信息才可以进行调用JS-SDK。)

wx.config({
    debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
    appId: ‘‘, // 必填,公众号的唯一标识
    timestamp: , // 必填,生成签名的时间戳
    nonceStr: ‘‘, // 必填,生成签名的随机串
    signature: ‘‘,// 必填,签名,见附录1
    jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
});

详细接入代码

+ (currentLink.indexOf("?") > -1 ? ("&u=" + "${u!}" + "&t=" + "${t!}" + "&o=" + "${o!}" + "&s=" + "${s!}") : ("?u=" + "${u!}" + "&t=" + "${t!}" + "&o=" + "${o!}" + "&s=" + "${s!}"));
           shareLink = shareLink  + (shareLink.indexOf("?") > -1 ? ("&city=" + "深圳") : ("?city=" + "深圳"));
    var shareImgUrl = "${IMGPATH!}/images/banner2.png";
    var shareGid = "";

    wx.ready(function () {
        //分享给朋友
        wx.onMenuShareAppMessage({
            title: shareTitle,
            desc: shareDesc,
            link: shareLink,
            imgUrl: shareImgUrl,
            success: function (res) {
                   shared(shareLink, "friend", shareGid);
               },
               fail: function (res) {
                 alert(JSON.stringify(res));
               }
        });
        //分享到朋友圈
        wx.onMenuShareTimeline({
            title: shareTitle,
            desc: shareDesc,
            link: shareLink,
            imgUrl: shareImgUrl,
            success: function (res) {
                   shared(shareLink, "Timeline", shareGid);
               },
               fail: function (res) {
                 alert(JSON.stringify(res));
               }
        });
          //分享到QQ
        wx.onMenuShareQQ({
            title: shareTitle,
            desc: shareDesc,
            link: shareLink,
            imgUrl: shareImgUrl,
            success: function (res) {
                   shared(shareLink, "QQ", shareGid);
               },
               fail: function (res) {
                 alert(JSON.stringify(res));
               }
        });
          //分享到腾讯QQ
        wx.onMenuShareWeibo({
            title: shareTitle,
            desc: shareDesc,
            link: shareLink,
            imgUrl: shareImgUrl,
            success: function (res) {
                   shared(shareLink, "Weibo", shareGid);
               },
               fail: function (res) {
                 alert(JSON.stringify(res));
               }
        });
          //分享到QZone
        wx.onMenuShareQZone({
            title: shareTitle,
            desc: shareDesc,
            link: shareLink,
            imgUrl: shareImgUrl,
            success: function (res) {
                   shared(shareLink, "QZone", shareGid);
               },
               fail: function (res) {
                 alert(JSON.stringify(res));
               }
        });
    });

    function shared(url, type, gid){
        var rUrl = basePath + "/share/add?type=" + type + "&url=" + encodeURI(url);
        if(!!gid) {
            rUrl += "&gid=" + gid;
        }
        $.ajax({
            type: "GET",
            url: rUrl,
            dataType: "json",
            success: function(rs){
                //alert("分享成功");
            }
        });
    }
   " _ue_custom_node_="true">

原文地址:https://www.cnblogs.com/lldbk12/p/11455604.html

时间: 2024-11-06 04:06:29

微信自定义分享链接信息(标题,图片和内容)的实现教程的相关文章

Vue 项目实现微信分享的自定义分享链接问题解决

前言: 前两天在做微信公众号里的项目的时候有一个需求是在 vue 项目中实现微信分享,然后在自定义分享链接的时候出了一些问题,分享出去的自定义链接(链接中携带参数)总是会直接跳到项目首页,而且是玄学跳转,时而自定义链接正常,时而直接跳到首页,答案在文章最后面. 正文: 1. 这里不说微信分享中的配置微信 js-sdk ,请自行查阅微信公众号开发文档 2. 阐述下 解决此问题的一些思路 解决这个问题需要知道这样的信息,微信公众号中的项目在请求签名和自定义分享链接的时候对于Vue 的#路由不太友好

微信自定义分享到朋友圈API

<script src="http://s0.qhimg.com/!249ce048/WeixinApi.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> WeixinApi.ready(function(Api) { // 微信分享的数据 var wxData = { &

微信内分享链接在推广的时候如何防封的常见问题解答

针对微信转发分享链接过程中,您宝贵的域名被微信检测系统过滤拦截而无法正常浏览,例如该网页包含诱导分享内容,被多人投诉等,又例如提示该网页已停止访问等提示.域名防封的原理就是能快速及时地绕过检测系统,让你的域名在微信内始终保持可访问的状态.以达到减少推广成本,提高推广效率的目的. 那么我们分析的时候应该从哪些方面去着手分析呢?今天就为大家分析一下拦截原理和解决方案,请看下文. 首先我们要知道为什么我们的域名会被微信封,然后从拦截因素逐条解决. 域名被拦截因素 1.项目竞争大,同行举报过多. 2.网

微信分享链接获取标题和小图片

一.标题 微信分享链接的小标题:自动拉取title标签的内容. 二.链接的小图标 今天测试的时候发现,网页链接在QQ浏览器上打开,分享的小图片是有显示的, 自动获取网页上的一张图片,但是为什么微信浏览器分享到朋友圈时图片却不显示呢? 想要的效果: 现实效果: 在网上搜了一下发现,原来是因为 微信浏览器上自动拉取的图片必须是大于300*300px的图片,( 会取 最近一张图片符合条件的). 解决办法: (一) 在boby 和head之间添加下面的代码即可,图片路径自行修改. *注意这个图片必须是大

微信jssdk-微信分享链接修改标题描述图片

1先登录微信公众平台进入"公众号设置"的"功能设置"里填写"JS接口安全域名"  要在微信公众号中添加一个当前分享网页的域名 2引入JS文件  <script src="https://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script> 3后台引入 require_once ('jssdk.php'); $jssdk = new JSSDK("*

微信自定义分享卡片链接的解决方案(可自定义标题 描述 缩列图)

微信现在是众多公司营销的重点.遍布朋友圈和消息群组里的html5各位可能也是天天见了,不过自从微信更新了官方api后,对整个微信内的页面管控都严格了不少. 一.微信分享卡片自定义缩略图消失的原因--微信官方策略的调整: 结合以上微信官方声明,对网页的微信分享卡片自义分享,我们能得出以下三个主要结论: 网页必须通过接入微信JSSDK的形式来进行调用分享:网页对应的站点域名必须是"公众号JS安全域名":"公众号JS安全域名"必须是经过认证的公众号中添加管理的域名: 以上

微信自定义分享操作步骤

微信内分享自定义图片.标题.摘要的设置及操作步骤 一.在微信内绑定站点域名 设置地址:https://mp.weixin.qq.com 位置:设置->公众号设置->功能设置->JS接口安全域名 这里填写好域名(比如 www.apple.com   比如 blog.apple.com) 按照提示下载对应文件上传到站点根目录,点"保存" (成功会有提示,没事别改着玩,有次数限制) 二.找到AppID(应用ID)和AppSecret(应用密钥) 地址:https://mp.

微信内分享链接防红办法-微信域名防封技术系统的实现方案

想必使用微信分享app链接或其他链接的时候都遇到过被封被拦截的情况,这在现在是已经见怪莫怪了.但是一次两次还好,总是这样也吃不消,不说别的就光去换域名都花了不少钱.那么大家一定想知道别人推广的时候怎么很少出现这种情况呢,他们只不过是用了微信域名防封技术罢了. 该技术也不难,主要是要知道微信拦截的原理,再从原理倒着推逐个解决就能实现域名防封了.那下面就来了解一下防封这方面的知识! 微信拦截域名的因素 1. 微信规定域名要备案,并且要加白名单,新买的域名没做站就被封,应该是抢的刚被人放弃的域名,并且

微信JSSDK分享朋友圈微信自定义分享接口

服务项目 新手技术咨询 企业技术咨询 定制开发 服务说明 QQ有问必答 QQ.微信.电话 微信开发.php开发,网站开发,系统定制,小程序开发 价格说明 200元/月 1000/月 商议       联系 851 488 243, 备注:模板消息 微信jssdk分享接口需要微信认证的公众号才有权限可以使用,而微信认证不仅需要企业资质,而且每年都要进行一次认证,认证费用需要交300给微信官方 如果你没有认证的公众号,可以租用我们的分享接口权限 1.一次收费,永久有效 2.使用简单,在你的网站加一段