Pregunta

Tengo varios botones en Facebook como yo que están siendo prestados a través de XFBML. Después de hacer clic en ellos, parece que el trabajo en que cambian de la norma como el botón en el "pulgar hacia arriba" icono que dice "Usted como este". Sin embargo, después de un segundo o dos (supongo que el tiempo que tarda en golpear a los servidores de FB y volver), se disímiles automáticamente, de nuevo en el original como el botón de girar.

Ver un video de lo que quiero decir aquí.

Mi código es bastante estándar:

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml" lang="en">

...

<fb:like href="http://www.example.com/valid/path" layout="button_count" ref="recipe_preview" />

...

<script type="text/javascript">
    window.fbAsyncInitExt = function() {
        FB.Event.subscribe('edge.create', function(response) {
            alert('Facebook Like Button: ' + response);
        });
    };
</script>

...

<div id="fb-root"></div>
<script type="text/javascript"> 
    window.fbAsyncInit = function() {
        FB.init({
            appId:  'XXXXXXXXXX',  // my app ID is here
            status: true,
            cookie: true,
            xfbml:  true
        });
        if (typeof(fbAsyncInitExt) == 'function') {
            fbAsyncInitExt();
        }
    };
    (function() {
        var e = document.createElement('script');
        e.type = 'text/javascript';
        e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
        e.async = true;
        document.getElementById('fb-root').appendChild(e);
    })();
</script> 

Editar Por si sirve de algo, también trató de ver si Facebook fue el envío de cualquier información de registro, pero no parece ser:

<script type="text/javascript">
    window.fbAsyncInitExt = function() {
        FB.Event.subscribe('edge.create', function(response) {
            alert('Facebook Like Button: ' + response);
            console.debug(response);
        });
        FB.Event.subscribe('fb.log', function(response) {
            alert('LOG: ' + response);
            console.debug(response);
        });
    };
</script>
¿Fue útil?

Solución

Después de un montón de excavación, que finalmente descubrió el origen del error. Resulta que la página de referencia el valor href en mi etiqueta fb:like requiere al menos una de las etiquetas META o fb:app_id fb:admins en la cabeza. Para referencia: http://developers.facebook.com/docs/opengraph

Otros consejos

Después de probar todas las soluciones que pude encontrar, ninguno funciona, pero he intentado usar el "alimento vivo" ID de aplicación en lugar de la "transmisión en vivo" por defecto cuando se está recibiendo el código de la página de desarrolladores de Facebook, que trabajó para mí.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top