【问题标题】:How to Facebook share a single blog post, rather than the entire blog feed如何在 Facebook 上分享一篇博文,而不是整个博文提要
【发布时间】:2013-09-18 19:43:03
【问题描述】:

我希望我的问题并不愚蠢,我对 Javascript 很陌生。

我直接使用来自 Facebook 的脚本创建了一个 Facebook 分享按钮:

<a href="#" 
  onclick="
    window.open(
      'https://www.facebook.com/sharer/sharer.php?u='+encodeURIComponent(location.href), 
      'facebook-share-dialog', 
      'width=626,height=436'); 
    return false;">
  Share on Facebook
</a>

但是,当我点击链接时,它想要分享我博客的整个 URL,而不仅仅是特定的博客文章。我读过其他人对 Open Graph 提出了一些建议,但我不确定这有什么关系。任何帮助都是极好的。

【问题讨论】:

    标签: javascript facebook facebook-graph-api facebook-opengraph sharing


    【解决方案1】:

    关键是将location.href 替换为该博文的具体网址。

    如果您使用 Wordpress,您可以在 The Loop 中添加如下内容:

    <a href="#" onclick="window.open('https://www.facebook.com/sharer/sharer.php?u='+encodeURIComponent(<?php the_permalink(); ?>), 'facebook-share-dialog', 'width=626,height=436'); return false;">Share on Facebook</a>
    

    在 Wordpress 中,the_permalink() 将返回该帖子的确切 URL,确保 Facebook 只会分享该特定帖子。

    【讨论】:

    • 感谢您的提示 shshaw!我正在使用 SquareSpace,并且正在针对博客的特定永久链接进行一些研究。有些人建议使用 href="mydomain.com{permalink}",但这不起作用。
    • 我真的想通了!对于 SquareSpace,您只需将 {permalink} 放在等号之后。 :)
    • 太棒了!很高兴你找到了。如果 SquareSpace 允许,您可能需要这样做:&lt;a href="#" onclick="window.open('https://www.facebook.com/sharer/sharer.php?u='+encodeURIComponent('{permalink}'), 'facebook-share-dialog', 'width=626,height=436'); return false;"&gt;Share on Facebook&lt;/a&gt; encodeURIComponent 部分格式化永久链接,在将 URL 发送到 Facebook 时不会导致特殊字符、间距等问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-22
    • 1970-01-01
    • 2021-10-17
    • 1970-01-01
    相关资源
    最近更新 更多