El otro día implementando una caja de like de Facebook me encontré con este error en la consola del navegador y que investigando encontré esta solución.
La página en cuestión para obtener el código es esta:
http://developers.facebook.com/docs/reference/plugins/like-box/
Después de elegir todas las opciones y hacer clic en mostrar código se os abrirá una ventana.
En el código veréis algo como esto:
(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'));
Pues bien, el problema radica en que necesitáis vuestra appID para poder evitar este error.
Pues bien, lo primero que tenemos que hacer es ir a:
http://developers.facebook.com/setup
Y a continuación crear una aplicación y copiarla. La presencia de este Id de aplicación, llamará automáticamente FB.init () con configuración de las aplicaciones básicas. Pero como no está en el código inicial y se ha quitado, FB no está llamando a su función de llamada init,. GetLoginStatus () directamente.
Así pues, si vamos a crear una aplicación para nuestra web, y añadimos el ID de aplicación en el siguiente fragmento de código podremos conseguir eliminar este error.
//connect.facebook.net/fr_CA/all.js#xfbml=1&appId=YOUR_APP_ID
Quedando algo como:
(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&appId=YOUR_APP_ID";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
Donde tenéis que modificar YOUR_APP_ID por vuestro ID.
¡Espero que esto ayude!