我偶然发现了几个围绕整合Facebook评论问题的问题,但遗憾的是没有找到解决方案的运气。我试图使用Facebook提供的代码在网站中加入Facebook评论。我在标签中插入了Javascript SDK。
<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/all.js#xfbml=1";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
鉴于我希望对所有帖子都有评论,我稍微修改了代码以动态创建URL。
<div class="fb-comments" data-href="<?php the_permalink(); ?>" data-width="470" data-num-posts="10"></div>
我也尝试过非PHP解决方案:
<script>
$(document).ready(function() {
$('.fb-comments').attr("data-href", document.URL);
});
</script>
评论似乎在最初发布时有效,但未保存在Facebook端。当我检查来自图谱API的评论数量http://graph.facebook.com/?ids=http://example.com/时,总数仍为0.任何想法?问题可能是因为没有应用程序ID吗? Facebook开发者页面听起来好像审核工具是可选的。
答案 0 :(得分:0)
原来代码的顺序是问题。不需要Facebook App ID。我在Javascript SDK代码之上有上述非PHP解决方案。一旦我重新排列这些块,评论框就会生效。
答案 1 :(得分:0)
<script>
document.write("<div class='fb-comments' data-href='" + window.location.href + "' data-num-posts='5' data-width='100%'></div>");
</script>