I’m using the module “facebook like box” in my homepage:
<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/it_IT/all.js#xfbml=1";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
I put this code immediately after body tag and I put this in left side:
<div class="fb-like-box fb-box-laterale" href="http://www.facebook.com/RistorantiRomaRisto.it" data-href="http://www.facebook.com/platform" data-width="190" data-height="380" data-show-faces="true" data-stream="false" data-header="true"></div>
All works done, but I receive this error in console: FB.getLoginStatus() called before calling FB.init()
I’ve just read other conversation where i read that “You need to load the api asynchronously” and I followed their instructions with no result.
How can I solve it?
This happen because you don’t add an appId to the url you set for facebook.
See the complete code Facebook generate here: https://developers.facebook.com/docs/reference/plugins/like/
As you’ll see, the url is written like this:
//connect.facebook.net/fr_CA/all.js#xfbml=1&appId=YOUR_APP_IDThe presence of this appId, will automatically call
FB.init()with basic app settings. But as you removed it, FB isn’t calling it’s init function, and call.getLoginStatus()directly.So, go create a app for your website, and add the app Id to the code snippet in order to remove this error.
Hope this help !