我试图通过代码注入将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评论插件-每个页面都有相同的评论
谢谢你的帮助!
我做了什么:
在Pages > Blog > Settings > Blog Post Code Injection
中,增加:
<div class="fb-comments" data-href="{permalink}" data-numposts="5"></div>
{permalink}
自动获取博客文章的永久链接。
.blog-list .fb-comments { display: none; }
我能够看到博客列表和博客详细页面的区别在于父元素存在.blog-list
或.blog-page
类,所以上面的css只会隐藏.blog-list
中的注释。
太棒了!我现在已经把它全部启动并运行了!!所以兴奋。
关于这个问题,我将为其他人添加的唯一一件事是,您还需要添加一些站点范围的代码。
设置>高级>代码注入>头
<!--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注释,这样你就不会在你的页脚上显示它们。