Ecco qui una guida veloce veloce per tutti quelli che mi han chiesto come capire se un utente è FAN o meno della pagina.
Grazie a questo tutorial potrete mostrare una pagina di benvenuto a chi non ha ancora cliccato mi piace e il contenuto vero a proprio a chi già ha cliccato sul tasto mi piace della vostra pagina.
Il tutorial si compone di tre semplici passi: creare un’applicazione iFrame, preparare l’ambiente di sviluppo Facebook e scrivere codice PHP per capire se un utente è FAN.
Creare un’applicazione iFrame
Clicca qui http://www.facebook.com/developers/createapp.php per creare la tua nuova applicazione. Clicca su Sito Web e inserisci l’URL e il dominio del tuo sito (per esempio http://www.zanna86.it come URL e zanna86.it come dominio).
Clicca su Integrazione Facebook, inserisci un nome per la Page Canvas (per esempio: sito_zanna86it). Alla voce Canvas URL inserisci l’url compreso della cartella presente sul tuo server dove andremo a creare l’applicazione (per esempio http://www.tuosito.it/applicazioni_fb/).
Imposta la voce Canvas Type e la voce Page Tab Type su Iframe e alla voce TAB Url inserisci l’url della pagina PHP che andremo a creare sul tuo server (per esempio benvenuto.php).
Clicca sul pulsante Salva modifiche e la tua applicazione sarà pronta. Annotatevi da qualche parte l’ ID applicazione e la Chiave segreta.
Creare l’ambiente di Sviluppo Facebook
Scaricate questo archivio e caricatelo via FTP la cartella facebook all’interno della cartella applicazioni_fb in modo che il file facebook.php si trovi all’indirizzo http://www.tuosito.it/applicazioni_fb/facebook/facebook.php
Capire se un utente è FAN della tua Pagina
Ora è tutto pronto per creare la nostra pagina di benvenuto.php che creeremo in http://www.tuosito.it/applicazioni_fb/benvenuto.php
Il codice da inserire è il seguente:
require_once('../applicazioni_fb/facebook/facebook.php');
//Inserisci il tuo ID applicazione e la tua chiave segreta
$facebook = new Facebook(array(
'appId' => '',
'secret' => '',
'cookie' => true,
));
$signed_request = $facebook->getSignedRequest();
if($signed_request["page"]["liked"] == 1){
echo "Sei Fan, ti mostro il contenuto!";
} else {
echo "Non sei Fan, ti do il benvenuto e ti invito a cliccare su Mi Piace!";
}
Vediamo insieme come funziona:
Innanzitutto includiamo il file facebook.php necessario per lo scambio dati. Successivamente viene creata una nuova istanza Facebook passando l’ID della nostra applicazione e la nostra chiave segreta.
Una volta ottenuta l’autenticazione viene fatta una richiesta a Facebook tramite la funzione $facebook->getSignedRequest(). Essa salverà nell’array $signed_request diversi parametri. Quello di nostro interesse è il $signed_request[“page”][“liked”] che sarà settato a 1 se l’utente è FAN della nostra pagina!
Quindi con una semplice IF saremo in grado di mostrare una pagina di benvenuto all’utente non FAN, mentre a chi ha già cliccato su Mi Piace mostreremo il contenuto vero e proprio!
Tutto chiaro? Siete riusciti?
Grazie zanna
Funziona!
Grazie 1000!!!! 😉
Ottimo! Il primo spiegato bene e che funziona veramente….. dopo innumerevoli l’ho trovato, complimenti!
Come si può fare se al posto di “Sei Fan, ti mostro il contenuto!” voglio indirizzarlo nella bacheca della pagina?!
Ciao Enrico e grazie..!
Probabilmente tu hai già impostato come pagina di destinazione quella contenente l’applicazione che ho spiegato in questa pagina.
Quindi un “non fan” digitando l’indirizzo della tua pagina approderà sulla tua applicazione. Un fan, invece, digitando l’indirizzo della tua pagina approderà sulla bacheca.
Quindi se vuoi indirizzare un utente che è appena diventato FAN devi eseguire questo codice javascript che cambia l’indirizzo della finestra TOP.
Il codice è questo:
//controllo se è FAN
//se è fan
//chiudi tag PHP
//apri il tag script
top.location =”http://facebook.it/paginaFB”;
//chiudi il tag script
//apri tag php
PS:scusa la poca chiarezza del codice ma se scrivevo il codice corretto veniva interpretato nel mio blog!
Ciao
Perfetto, domani lo provo!
Grazie
Ciao
ciao zanna non capisco bene come integrare questo secondo passaggio che hai cifrato // con il primo file php…mi daresti una dritta completa magari via mail ti mando il mio file grazie
Ciao Ricky! Dimmi se ho capito bene…vorresti fare come Enrico? Ovvero reindirizzare il FAN verso la bacheca, giusto?
Una volta che hai creato l’applicazione oggetto del mio articolo e testato che funzioni puoi fare il passo successivo e aggiungere il codice javascript che permette di fare un redirect alla bacheca.
Per fare questo redirect dovrai aggiungere questa riga:
top.location =”http://facebook.it/paginaFB”;
racchiusa dai tag “script” e inserirla subito prima della riga
echo “Sei Fan, ti mostro il contenuto!”;
Nota bene: in questo modo quando i FAN cercheranno di andare sulla tua applicazione verranno reindirizzati verso la bacheca…sempre! In pratica la tua applicazione verrà vista solo da NON FAN che, una volta cliccato su “Mi piace” verranno reindirizzati verso la bacheca!
Ciao
Grazie Zanna,
una guida semplice ed efficace che dopo tante ed inutili
ricerche sul web, mi ha fatto subito capire quello che desideravo.
Volevo chiederti solo una cosa: come rendo l’applicazione
non visibile in Facebook? Se nella ricerca di facebook
scrivo il nome dell’applicazione mi appare la sua pagina
e vorrei evitarlo. Sai come aiutarmi? Grazie.
Ciao Marco, grazie..!!
Purtroppo però non so aiutarti nella tua seconda domanda. Non so se esiste un modo per nascondere l’applicazione dalla ricerca di Facebook…anzi, se trovi un modo faccelo sapere qui nei commenti..! grazie!
Ciao
Ciao, a me da questo errore :
Parse error: syntax error, unexpected T_NEW in /web/htdocs/www.dunit.it/home/FBapp/facebook/facebook.php on line 4
Sapete Aiutarmi ??
Grazie
allora credo il problema sia il mio host che non ha installato php 5(quindi non riconosce il comando Throw). Dove posso scaricare lo stesso file creato per php 4 ?
Grazie
Ciao
Ciao Ivan, il tuo server ha il curl abilitato?
Ciao grazie per la tua guida…ma non risulta piu funzionare perche la piattaforma faceboook è cambiata…nonostante abbia tentato innumerevole volte..la pagina è completamente diversa….della creazione delle app non so se è per quello ma lo script non lavora…puoi aiutare?
Il codice PHP è corretto. Prova a cercare guide più aggiornate su come creare applicazioni. Una volta che hai creato la tua applicazioni puoi tornare qui e seguire il resto della guida che è ancora valido!
Ciao
E’ ancora attuale questo script ?
Ho provato ma non ci sono riuscito a farlo funzionare poiché facebook ha cambiato un po’ tutto…
mi date un aiuto ?
Ciao Limpido,
no purtroppo lo script è diventato obsoleto. Mi dispiace ma non ho più seguito la questione e non ti saprei aiutare.