2010-12-11 23 views
10

Tengo una sección de una página web a la que solo quiero que las personas puedan acceder después de hacer clic en el botón Me gusta de Facebook.Muestra el contenido después de hacer clic en el botón Me gusta de Facebook

¿Cómo puedo ocultar esa área en particular y luego mostrarla solo después de que alguien haga clic en el botón Me gusta.

En cuanto al código de Facebook Como se ve así:

<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like href="www.oursite.com" show_faces="false" width="330" font="verdana"></fb:like> 

<div id="hidden-area">Hidden Content</div> 
+0

¿Hay alguna manera de verificar si un usuario en particular le ha gustado su página/aplicación de Facebook? Es decir, ¿la API de Facebook proporciona esta funcionalidad? De ser así, podría usarlo para verificar si al usuario le ha gustado su página/aplicación en el servidor, y mostrar/ocultar el contenido en consecuencia. – Cam

+0

Publiqué esta pregunta hace bastante tiempo y recibí una notificación de que se convirtió en una "pregunta famosa". No estoy seguro de que me guste asociarme con esta cuestión relacionada con el soborno, lol. – Bijan

Respuesta

17

Uso 'edge.create':

http://developers.facebook.com/docs/reference/javascript/FB.Event.subscribe

realmente simple ... incluso puede acoplarlo con jQuery.

<script> 
    window.fbAsyncInit = function() { 
     FB.init({ 
      appId : '<?php echo $facebook->getAppId(); ?>', 
      session : <?php echo json_encode($session); ?>, // don't refetch the session when PHP already has it 
      status : true, // check login status 
      cookie : true, // enable cookies to allow the server to access the session 
      xfbml : true // parse XFBML 
     }); 

     // whenever the user logs in, we refresh the page 
     FB.Event.subscribe('auth.login', function() { 
      window.location.reload(); 
     }); 

     FB.Event.subscribe('edge.create', function(response) { 
      $.get('URLlink?uid=' + <?php echo $uid; ?>, function(data) { 
       $('#id').html(data); 
      }); 
     }); 
    }; 

    (function() { 
     var e = document.createElement('script'); 
     e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js'; 
     e.async = true; 
     document.getElementById('fb-root').appendChild(e); 
    }()); 
</script> 
+1

¿Qué pasa si el botón me gusta ya me gusta, cómo puedo capturar esto? – joon

+0

pages.isFan ... Google y usted deberían poder encontrar documentos en él. – trgraglia

0

No estoy muy seguro de si esto funciona. Recordando la introducción f8 del botón Me gusta facebook no permita que los propietarios de sitios web vean a quienes les gusta su página.

El botón Me gusta se muestra en el lado del cliente desde el archivo de script java alojado en Facebook. No soy un experto en scripts super java, pero no conozco una forma de obtener variables de archivos de script java externos.

La única idea que tengo es cuando un usuario hace públicos sus me gusta. Probablemente puedas leer la cookie y luego buscar sus "me gusta" en su página pública de Facebook. Como cargas facebook mayor parte de su contenido de forma dinámica se puede solapas ingeniero de las funciones java script utilizados en la página pública de Facebook internamente, incluso si no son parte de la API oficial

0

Otra forma es el plugin Like 2 Unlock for jQuery

Permite bloquear descuentos, vídeos, enlaces de descarga, imágenes, contenido adicional, formularios y más. Te ayudará a aumentar el número de me gusta, para obtener tráfico adicional y más clientes de la red social.

+0

pero está vinculado a su URL. Si el portal del sitio web no es mi dominio, ¡no funcionará! – Grasper

Cuestiones relacionadas