设置文本到谷歌+分享按钮(set text to google+ share button)

2019-07-30 19:24发布

我创建具有G +分享按钮的网页,但我想动态改变内容的描述分享。 定制我使用分享按钮片段与开放图谱协议。

我尝试的解决方案是下面,但它并没有正常工作:

<meta property="og:title" content="O Fabuloso Gerador De Lero Lero v3" />
<meta property="og:image" content="images/robot.png" />
<meta property="og:description" content="..." />
$('meta[property="og:description"]').attr('content',text);

var shareButtons = $('div:first','section.share-buttons');
shareButtons.html('');
shareButtons
    .prepend('<a href="https://twitter.com/share" class="twitter-share-button" data-text="' + text.trunc(120,true) + '" data-url="http://goo.gl/1KHFM" data-lang="pt">Tweetar</a>')
    .prepend('<div class="g-plus" data-action="share" data-href="http://lerolero.miguelborges.com/t=' + new Date().getTime() + '" data-annotation="bubble"></div>');

try {
    window.twttr.widgets.load();
    window.gapi.plus.go();
} catch(e) {}

但是,在共享按钮的描述的内容总是初始。

任何人都知道如何使它发挥作用?

编辑:

我曾与按钮twitte同样的问题,而是设法解决这个问题:

        shareButtons
            .prepend('<a href="https://twitter.com/share" class="twitter-share-button" data-text="' + text.trunc(120,true) + '" data-url="http://goo.gl/1KHFM" data-lang="pt">Tweetar</a>');

        window.twttr.widgets.load();

Answer 1:

由服务器端生成的页面片断撷取您的网页的。 该网页抓取工具不执行JavaScript。 这就是为什么你该元素所做的更改不会在你的份额表示。

您可以解决使用GET参数这一问题,并通过指定目标。

  1. 配置您的网页接受描述为GET paramater。 例如, http://exmaple.com?desc=foobar会导致你的Open Graph标记看起来像这样: <meta property="og:description" content="foobar" />
  2. 当你渲染你的分享链接,分享按钮或+1按钮,与使用GET参数指定的期望说明目标页面。 为共享按钮,您的标记可能看起来像这样: <div class="g-plus" data-action="share" data-href="http://example.com/?desc=foobar"></div>

然而这将冲击计数。 如果您使用+1按钮这个技术,每个描述将被视为不同的网页,计数将分别累积。



Answer 2:

我知道,Facebook的缓存的描述和其他元数据信息。 看来,根据这个链接 ,谷歌+确实也是如此。 这似乎是它的缓存时间无限期地...这使得您的情况几乎是不可能的,这取决于你想要多久改变内容。 如果不是这样,或者再等几天,看看它的变化。 我想指出,珍妮也是正确的,但通过移动后,你最有可能仍然不会得到理想的结果。



文章来源: set text to google+ share button