开发者

Facebook comments, for each page

开发者 https://www.devze.com 2023-01-05 20:10 出处:网络
I installed facebook comments on my we开发者_高级运维bsite. My website is a dynamic website and pages are like this www.example.com/page?id=54, www.example.com/page?id=67

I installed facebook comments on my we开发者_高级运维bsite. My website is a dynamic website and pages are like this www.example.com/page?id=54, www.example.com/page?id=67

If I post a comment in this page: www.site.com/page?id=54, it also appears in www.example.com/page?id=67. The comments are not unique for a page, but appear in every page. Why is that ?


It seems that FB ignores the ?query part of the URL when retrieving comments.

What you could do: use some form of URl rewriting, so that your URLs are in the form http://www.example.com/page/id/54/ or similar (i.e., appearing to not use the ?id=something query part). That way, the comments should load for each page separately.


Here is a solution that worked for me. 1- Copy this SDK from Facebook. Most probably you already did that.

<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&appId=114215202075258";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>

2- Then this

<div class="fb-comments" data-href="http://example.com" data-width="470" data-num-posts="3"></div>

3- The the solution line. Paste these lines of JS at the end. Make sure you do everything in the similar order as I have. It will work, no matter you have a ? in your URL.

<script>
$(".fb-comments").attr("data-href", window.location.href);
</script>
0

精彩评论

暂无评论...
验证码 换一张
取 消