[gelöst] Restricted Facebook Like Box
Eingetragen von Schiggi (28)
am 14.04.2014 - 20:41 Uhr in
am 14.04.2014 - 20:41 Uhr in
Hallo zusammen,
eine Frage: wie kann ich folgendes Problem lösen:
Ich blende eine Facebook-Like Box per iFrame in einem Block in der Sidebar ein.
Geht wunderbar - keine Probleme.
Nur - wenn man nicht bei Facebook eingeloggt ist, wird nichts angezeigt, da die Fanpage eine Alters-/Alkoholbeschränkung hat.
Hat jemand eine Idee oder Erfahrung damit, wie man dem Block sagen könnte, er soll nur dann angezeigt werden, wenn auch Facebook etwas anzeigt (sprich wenn man eingeloggt ist)?
Grüße und Danke im Voraus
Schiggi
- Anmelden oder Registrieren um Kommentare zu schreiben
Moin, Hier kommst du
am 15.04.2014 - 06:32 Uhr
Moin,
Hier kommst du eigentlich nur über die Facebook API selbst weiter - ich nehme einfach mal an, dass das Javascript SDK durch die Like Box sowieso schon eingebunden hast.
Wenn du in einem eigenen Javascript die Funktion FB.getLoginStatus aufrufst, kannst du sehen, ob ein User eingeloggt ist / ausgeloggt ist und entsprechend interagieren (bspw. einen Alternativtext statt der LikeBox anzeigen).
Weitere Info inklusive Beispiel:
https://developers.facebook.com/docs/reference/javascript/FB.getLoginSta...
SteffenR
Hi SteffenSuper, vielen Dank
am 15.04.2014 - 09:03 Uhr
Hi Steffen
Super, vielen Dank für den Hinweis - dann werd ich mir da mal was basteln!
Grüße und nochmals Danke
Schiggi
Hier den Code den ich in der page.tpl eingebaut habe - funktioniert super!!
<div id="fb-root"></div>
<script src="http://connect.facebook.net/de_DE/all.js"> </script>
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({appId: 'DEINE APP ID', status: true, cookie: true,
xfbml: true});
FB.getLoginStatus(function(o) {
if (!o && o.status) return;
if (o.status == 'connected') {
// USER IS LOGGED IN AND HAS AUTHORIZED APP
// code der ausgeführt werden soll
} else if (o.status == 'not_authorized') {
// USER IS LOGGED IN AND HAS NOT AUTHORIZED APP
// code der ausgeführt werden soll
} else {
// USER NOT CURRENTLY LOGGED IN TO FACEBOOK
// code der ausgeführt werden soll
}
});
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol +
'//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
Dort kann man nun bestimmen, was passiert - zB ob ein DIV angezeigt wird oder nicht usw.