【问题标题】:Adding Facebook Commenting System to Squarespace Website - All Comments ending up on every webpage将 Facebook 评论系统添加到 Squarespace 网站 - 所有评论都出现在每个网页上
【发布时间】:2015-11-29 22:03:09
【问题描述】:

我正在尝试通过代码注入将 Facebook 评论系统添加到 Squarespace 网站。问题是,Facebook 想要在其代码中使用 URL 地址,而我只知道如何应用静态 url(最终结果是网站上的每条评论都出现在每篇博文的评论部分)

我需要帮助来弄清楚如何将单个网页 url 动态拉入以下 data-href 代码:

<div class="fb-comments" data-href="http://www.mywebsite.com/blog" data-numposts="5"></div>

我相信 Squarespace 使用某种形式的 JSON(请参阅开发网站:http://developers.squarespace.com/quick-reference/

这篇文章中提供的解决方案似乎都不起作用:Facebook comments plugin - same comments on every page

感谢您的帮助!

【问题讨论】:

    标签: php json facebook-javascript-sdk squarespace


    【解决方案1】:

    太棒了!我现在已经全部启动并运行了!!!好激动。

    我要为其他有此问题的人添加的唯一另一件事是,您还需要添加一些站点范围的代码。

    设置 > 高级 > 代码注入 > 标头

    <!--FACEBOOK COMMENT SYSTEM-->
    <div id="fb-root"></div>
    <script>(function(d, s, id) {
      var js, fjs = d.getElementsByTagName(s)[0];
      if (d.getElementById(id)) return;
      js = d.createElement(s); js.id = id;
      js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.8";
      fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));</script>
    

    此外,您需要关闭内置的 Squarespace cmets,这样您的页脚中就不会出现两者。

    【讨论】:

      【解决方案2】:

      我做了什么:

      Pages &gt; Blog &gt; Settings &gt; Blog Post Code Injection中,添加:

      &lt;div class="fb-comments" data-href="{permalink}" data-numposts="5"&gt;&lt;/div&gt;

      {permalink} 自动获取博文的永久链接。

      在此值得注意的是,facebook cmets 不仅会显示在您的博客文章页面上,还会显示在博客列表中的每个博客文章下方。我只希望 facebook cmets 出现在博客页面上,而不是在博客列表主页上,以防止 facebook cmets 出现在博客列表主页上我添加了 css:

      .blog-list .fb-comments { display: none; }

      我能够看到博客列表和博客详细信息页面之间的区别在于父元素存在类 .blog-list.blog-page 所以上面的 css 只会隐藏 .blog-list 中的 cmets。

      【讨论】:

      • 你太棒了乔希。感谢您为我回答这个问题!
      猜你喜欢
      • 1970-01-01
      • 2011-07-09
      • 1970-01-01
      • 2012-07-08
      • 2012-02-10
      • 2011-05-23
      • 2017-01-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多