微信分享,如何更改重新分享说明和缩略图?

dav*_*vur 5 html javascript wechat

有没有办法为我的网站页面在微信内共享时提供自定义标题,描述和缩略图?

背景

我们有一个iPhone应用程序,用户可以使用微信(又名微信)与他们的朋友发布/分享帖子.

当从应用程序共享标题时,将通过共享页面的API发布描述和图像(这些显示在从应用程序共享时根据需要显示).一旦共享,朋友在微信(而不是我们的应用程序)中打开这些页面.

问题是当朋友使用微信自己的分享按钮重新分享我们的页面时,它会丢失我们提供的描述.它将与HTML标题标签重新共享,页面上的第一个图像(拉伸或压扁为方形缩略图)以及描述最初只显示页面的URL.

我试过在描述元标记中提供描述,但没有运气.我甚至尝试过Facebook风格/开放图形og:description meta标签.

边注

我查看了一个似乎已经克服了这个问题的中文网站上的来源.我认为它是使用一种名为WeixinJSBridge的javascript插件解决的.不幸的是,我无法用英语发现任何文件 - 我的中文不是很好,而且我的意思不是很好,我读不出一个字.

Wen*_*Wen 4

[微信发布新的JS SDK后无法使用]这是微信的解决方案:http://mp.weixin.qq.com/qa/index.php ?qa=3163 但是,都是中文的。您可以尝试的代码如下:


var imgUrl = 'http://xxx/your-share-icon.png';
var lineLink = 'http://xxx/your-share-link';
var descContent = "your-content-desc";
var shareTitle = 'you-share-title';
var appid = 'your-app-id (from WeChat)';

function shareFriend() {
    WeixinJSBridge.invoke('sendAppMessage',{
                            "appid": appid,
                            "img_url": imgUrl,
                            "img_width": "640",
                            "img_height": "640",
                            "link": lineLink,
                            "desc": descContent,
                            "title": shareTitle
                            }, function(res) {
                            _report('send_msg', res.err_msg);
                            })
}
function shareTimeline() {
    WeixinJSBridge.invoke('shareTimeline',{
                            "img_url": imgUrl,
                            "img_width": "640",
                            "img_height": "640",
                            "link": lineLink,
                            "desc": descContent,
                            "title": shareTitle
                            }, function(res) {
                            _report('timeline', res.err_msg);
                            });
}
function shareWeibo() {
    WeixinJSBridge.invoke('shareWeibo',{
                            "content": descContent,
                            "url": lineLink,
                            }, function(res) {
                            _report('weibo', res.err_msg);
                            });
}
// WeChat browser will initial by above function and trigger WeixinJSBridgeReady event.
document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {

        // share to friend
        WeixinJSBridge.on('menu:share:appmessage', function(argv){
            shareFriend();
            });

        // share to timeline
        WeixinJSBridge.on('menu:share:timeline', function(argv){
            shareTimeline();
            });

        // share to weibo
        WeixinJSBridge.on('menu:share:weibo', function(argv){
            shareWeibo();
            });
        }, false);

Run Code Online (Sandbox Code Playgroud)