2010-12-11 18 views
10

Mam sekcję strony internetowej, do której chcę mieć dostęp tylko po kliknięciu przycisku Lubię to na Facebooku.Wyświetl zawartość po kliknięciu przycisku Facebook Jak przycisk

Jak ukryć dany obszar, a następnie wyświetlić go, gdy ktoś kliknie przycisk Podoba.

chodzi o kodzie Facebook Like wygląda to tak:

<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

Czy istnieje sposób sprawdzenia, czy dany użytkownik polubił twoją stronę/aplikację na Facebooku? To znaczy, czy interfejs API Facebooka zapewnia tę funkcjonalność? Jeśli tak, możesz go użyć do sprawdzenia, czy użytkownik polubił twoją stronę/aplikację na serwerze i odpowiednio wyświetlić/ukryć zawartość. – Cam

+0

Wysłałem to pytanie jakiś czas temu i otrzymałem powiadomienie, że stało się ono "znanym pytaniem". Nie jestem pewien, czy lubię być związany z tym pytaniem o łapówkarstwo, lol. – Bijan

Odpowiedz

17

Użyj „edge.create”:

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

bardzo prosty ... może nawet połączyć go z 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

co zrobić, jeśli przycisk podobny jest już lubiany, jak mogę go przechwycić? – joon

+0

pages.isFan ... Google to i powinieneś być w stanie znaleźć dokumenty na ten temat. – trgraglia

0

Nie jestem pewien, czy to działa. Pamiętając wprowadzenie f8 do przycisku na facebooku, nie pozwól właścicielom witryn zobaczyć, kto lubił ich stronę.

Przycisk podobny jest renderowany po stronie klienta z pliku skryptu Java przechowywanego na Facebooku. Nie jestem ekspertem od skryptów super java, ale nie znam sposobu na pobranie zmiennych z zewnętrznych plików skryptów Java.

Mam tylko pomysł, gdy użytkownik upublicznił swoje upodobania. Prawdopodobnie możesz przeczytać plik cookie, a następnie sprawdzić jego polubienia na jego publicznej stronie na Facebooku. jak Facebook ładunku większość jego zawartość dynamicznie można revers inżynier funkcje java script wykorzystane na stronie publicznej przez facebook wewnętrznie, nawet jeśli nie są one częścią oficjalnego API

0

Innym sposobem jest plugin Like 2 Unlock for jQuery

Pozwala zablokować rabaty, filmy, linki do pobrania, zdjęcia, dodatkowe treści, formy i więcej. Pomoże Ci to zwiększyć liczbę polubień, uzyskać dodatkowy ruch i więcej klientów z sieci społecznościowej.

+0

, ale jest związany z Twoim adresem URL. Jeśli portal internetowy nie jest moją domeną, nie zadziała! – Grasper

Powiązane problemy