Utilizzare i widget per mostrare i post di una pagina Facebook sul sito non è sempre la soluzione migliore. Per questo motivo ho realizzato un tutorial che descrive come inserire post Facebook su sito in maniera del tutto personalizzata. Come spesso accade, la velocità non è direttamente proporzionale alle performance né tanto meno alla qualità; creando con php post Facebook su sito, otterremo un prodotto graficamente personalizzabile al 100%. Come? Utilizzando le API Facebook messe a disposizione, è possibile, ed in questo articolo vi farò vedere in che modo.
Non servirà dotarvi di chissà quale conoscenza, basterà seguire pochi e semplici passi per creare con php post Facebook su sito utilizzando le sue API. Vi starete chiedendo perché sprecare tempo in questo modo se Facebook mette a disposizione dei widget personalizzabili? Fondamentalmente le risposte sono 2:
- Non siamo vincolati graficamente ai temi che i widget Facebook fornisce, possiamo adattare lo stream dei post alla grafica del sito, cosi da non rendere il nostro widget, un elemento esterno al contesto grafico da noi progettato;
- Non dimenticare che le performance giocano la sua parte, il widget Facebook, spesso è un iFrame che impiega più tempo a caricare, rispetto agli elementi interni del sito poiché ci sono più chiamate http esterne da gestire, considera inoltre che strumenti di monitoraggio delle performance (come ad esempio Google Speed Insight), tende a segnalare la latenza di caricamento dovuta a script esterni.
Questi sono i due motivi principali per portarvi a fare le cose in una certa maniera, utilizzando gli strumenti che Facebook stesso ci consente di utilizzare gratuitamente. Scopriamo come:
Diventa Facebook Developer
Come prima cosa è necessario iscriversi come Facebook Developer, qui. E’ la dashboard di sviluppatore, attraverso cui gestiremo lo status delle applicazioni realizzate. Proprio cosi, per creare con php post Facebook su sito, dobbiamo realizzare un’applicazione Facebook che possa girare su ambiente web.
Il primo passo è creare una nuova applicazione, selezionando come piattaforma, quella web (www). Successivamente, Facebook chiederà di dare un nome all’applicazione e scegliere una categoria di appartenenza.
Termineremo la creazione della nostra prima applicazione Facebook con una dashboard, attraverso cui è possibile monitorare e gestire lo status dell’app e recuperare i token necessari a realizzare materialmente l’applicazione. Siamo pronti? Spostiamoci sul codice!
E’ necessario scaricare le librerie Facebook, da qui e includerle nel progetto.
Cos’altro ti serve prima di poter mostrare la lista dei post? Torna nella dashboard e recupera le seguenti informazioni:
- App id
- App Secret
Copia il seguente codice e incollalo sostituendo mia_app_id e mia_app_secret con i valori reali:
function displayFacebookPosts()
{
require 'inc/facebook.php';
$facebook = new Facebook(array(
'appId' => 'mia_app_id',
'secret' => 'mia_app_secret',
));
$fbApiGetPosts = $facebook->api('/id_pagina/feed?limit=3');
$getFb = array();
if (isset($fbApiGetPosts["data"]) && !empty($fbApiGetPosts["data"])) {
echo '
- ';
foreach($fbApiGetPosts["data"] as $data) {
echo '
- ' . substr($data['message'], 0, 140) . ' '; } echo '
Come trovare id pagina Facebook
Avrai notato che è necessario recuperare l’id della pagina Facebook da collegare, questa informazione è nascosta e spesso difficile da recuperare. Se vuoi sapere come trovare id pagina Facebook, nessun problema! Clicca qui per farlo in maniera semplice e veloce.
Plugin per WordPress
Se stai cercando un plugin per WordPress che possa gestire in automatico tutto questo, sei nel posto giusto perché ne ho realizzato uno che mostra gli ultimi post di una pagina facebook sul proprio sito, utilizzando sia widget che shortcode: https://wordpress.org/plugins/easy-facebook-page-feed/. Qui, invece trovi tutta la documentazione necessaria e le domande a cui trovare risposta: http://www.marioconcina.it/blog/easy-facebook-post-feed-plugin-for-wordpress
9 comments
Riccardo
27 Maggio 2015 at 3:36
Ciao Mario , innanzitutto ti ringrazio di mettere a disposizione le tue conoscenze in aiuto degli altri . Non sono riuscito a capire dove mettere ad esempio il codice php da copiare ed incollare . Mi da un errore quando vado ad aprire la pagina . Io non uso wordpress . Le librerie del link sono deprecate , comunque rimanda alla nuova pagina . E’ possibile , se dovessi riuscire a far funzionare il tutto , ad inserire i post facebook in modo che si adattino responsivamente (anche al window resize) e non solo al caricamento della pagina ? Grazie mille in anticipo .
Saluti da Riccardo
Mario Concina
1 Giugno 2015 at 18:07
Ciao Riccardo,
grazie. Il codice php devi inserirlo in una parte in comune del tuo sito, in modo tale che la funzione possa essere richiamata in qualsiasi momento. Per quanto riguarda il resize, puoi lavorare via css, utilizzando questo script sei padrone della visualizzazione grafica e funzionale.
saverio
26 Agosto 2015 at 19:00
ho provato lo script ma non mi funziona, ho scaricato le librerie facebook, ho creato l’app su facebook ed ottenuto l’app id e il secret, ma nulla! cosa potrebbe essere?
Mario Concina
27 Ottobre 2015 at 15:25
riscontri qualche errore in particolare? Puoi dirmi esattamente quale?
grazie
Deep web
25 Novembre 2015 at 19:32
Grazie per questa guida molto chiara e lineare, ho risolto un grandissimo problema !!!
Luca Frassineti
11 Maggio 2016 at 19:03
Da qualche giorno sto provando a fare una cosa del genere con le 2.6 ma ho problemi con access token is required, tu hai avuto modo di ‘adeguare’ lo script per caso? grazie comunque
L.
gianni degli inganni
7 Luglio 2016 at 17:38
scusa invece sto provando a fare l’opposto, cioè un post di WP che va in automatico su facebook, ma non riesco! uso nextscript e mi dà sempre un errore di autenticazione che non capisco. Può dipendendere dal fatto che uso altervista gratis?
Federico Sergi
30 Agosto 2016 at 22:52
.
Mario Concina
31 Agosto 2016 at 9:28
ciao,
questo articolo è di un anno fa, nel frattempo Facebook ha cambiato qualcosa…di conseguenza andrebbe aggiornato secondo le nuove regole.