A partire dal 24 ottobre, Facebook non supporterà più gli embed di WordPress non autenticati. Pertanto, se state incorporando contenuti di Facebook e Instagram sul vostro sito WordPress, questi si romperanno.
In particolare, i vecchi endpoint oEmbed di Facebook vengono sostituiti da nuovi che richiedono l’autenticazione tramite Facebook. Poiché Facebook è proprietaria di Instagram, gli stessi requisiti valgono anche per gli endpoint Instagram oEmbed.
In questo articolo parleremo di come WordPress usa gli endpoint oEmbed di Facebook e Instagram, di cosa viene aggiornato e di come si possono risolvere le cose in modo che i vostri embed continuino a funzionare come dovrebbero.
Prepariamoci!
Come Sono Utilizzati gli oEmbed per Incorporare i Contenuti in WordPress
oEmbed è un protocollo che permette ai siti di incorporare contenuti da altri siti di terze parti con un semplice URL. È progettato principalmente per evitare la necessità di copiare e incollare HTML da altri siti. WordPress usa oEmbed per visualizzare i contenuti incorporati (come foto o video).
Basta inserire l’URL della risorsa nell’area dei contenuti e WordPress la trasformerà automaticamente in un embed e ne mostrerà un’anteprima dal vivo.
Nell’esempio sopra riportato, abbiamo incollato un link video di YouTube e WordPress lo ha convertito automaticamente in un video embed. Il protocollo oEmbed è la spina dorsale di WordPress per incorporare molti tipi di contenuti come video, immagini, aggiornamenti e altro da varie piattaforme di social media.
Anche se WordPress consente di incorporare iframe sanitizzati di qualsiasi fornitore registrato oEmbed, non li incorpora tutti per motivi di sicurezza. Incorpora solo gli URL di alcuni provider oEmbed per impostazione predefinita.
L’elenco dei fornitori di fiducia di oEmbed per WordPress comprende la maggior parte dei popolari siti di hosting di contenuti e social network come Imgur, Facebook, Instagram, Tumblr, YouTube, Vimeo e molti altri. Questi provider possono incorporare qualsiasi contenuto, come video, iframe, JavaScript e persino HTML random.
Gli Endpoint oEmbed di Facebook e Instagram (Legacy)
Gli endpoint oEmbed di Facebook e Instagram sono la spina dorsale per l’inserimento di contenuti Facebook e Instagram nei siti WordPress.
Gli endpoint oEmbed consentono di Facebook a WordPress di inserire non solo il contenuto principale, ma anche metadati come il nome della pagina e il logo, la data e l’ora, la miniatura, il numero di “mi piace”, i commenti, le condivisioni e l’URL alla fonte.
Lo stesso vale per l’integrazione dei contenuti di Instagram. È possibile vedere non solo l’immagine nell’embed, ma anche importanti informazioni sui metadati ad essa correlati.
I Nuovi Endpoint “oEmbed” di Facebook e Instagram
Facebook ha recentemente annunciato che i loro endpoint oEmbed esistenti saranno deprecati a partire dal 24 ottobre 2020. Ora chiamano questi vecchi endpoint come Legacy oEmbed endpoint.
Entro il 24 ottobre 2020, gli sviluppatori devono utilizzare un token utente, app o client quando interrogano l’API Graph per le immagini del profilo utente tramite UID, FB OEmbed e IG OEmbed. Gli sviluppatori devono fornire un token utente o app quando inviano query per le immagini del profilo tramite un UID o ASID, sebbene siano supportati anche i token client. Consulta il registro modifiche per Immagine dell’utente, Facebook OEmbed e Instagram OEmbed per i dettagli su come iniziare a chiamare questi endpoint dell’API Graph oggi stesso.
– Facebook for Developers
Cosa Vi Serve per Sfruttare l’API di Facebook oEmbed
Andando contro la natura del web aperto dell’API oEmbed, la nuova API di Facebook oEmbed vi richiede, nell’ordine, di:
- Avere un account su Facebook for Developers.
- Avere una Facebook App registrata per generare un App ID univoco.
- Abilitare oEmbed Product per la vostra App registrata.
- Generare un App Access Token o un Client Access Token.
- Impostare l’App Facebook in modalità Live.
In risposta a queste nuove esigenze, WordPress sta rimuovendo Facebook e Instagram come fonti affidabili di oEmbed.
Ci aspettiamo che la prossima major release di WordPress includa questi cambiamenti. Se state usando il plugin Gutenberg, l’ultima versione, la 9.0, ha già rimosso il supporto per loro.
Cosa Succede ai Vecchi Embed Facebook e Instagram?
WordPress memorizza le risposte oEmbed nel suo database sotto i post type post meta
o gli oembed_cache
nascosti (attualmente usato solo nei widget).
Dato che WordPress non elimina questi valori di default, il contenuto degli embed continuerà a esistere sul vostro sito web.
Saranno però eliminati se li cancellate manualmente dal database. Pertanto, tutti gli embed di Facebook o Instagram che avete aggiunto prima della scadenza del 24 ottobre rimarranno visibili anche dopo la data di deprecazione.
Come Incorporare i Contenuti Facebook e Instagram Dopo il 24 Ottobre
Se provate a incorporare i contenuti di Facebook o Instagram dopo la data di deprecamento degli endpoint oEmbed preesistenti, voi e i vostri utenti potreste ricevere degli errori HTTP 400 come risposta.
Per aiutarci a testare come i nuovi tentativi di incorporamento si presenteranno dopo la scadenza, Facebook ha aggiunto un parametro per gli endpoint oEmbed preesistenti per simulare l’errore. L’abbiamo testato e i risultati sono riportati di seguito.
Gli embed di riserva di Facebook appariranno sotto forma di piccoli riassunti (120 caratteri al massimo) all’interno delle virgolette. Includeranno anche link all’autore e alla fonte originale, ma nient’altro, nemmeno un riferimento a Facebook tranne che per i link, facendo clic sui quali si accede a Facebook.
In confronto, gli embed di riserva di Instagram sono molto migliori perché la struttura embed rimane praticamente intatta.
Detto questo, si tratta di una questione temporanea. Una volta che WordPress avrà rimosso gli endpoint oEmbed di Facebook e Instagram dal suo core, l’eredità degli endpoint oEmbed cesserà di essere un problema.
L’unico modo per incorporare i contenuti di Facebook e Instagram sarà quindi quello di soddisfare i requisiti di Facebook. Imparerete come farlo nella prossima sezione.
Come Risolvere il Problema degli oEmbed di Facebook e Instagram in WordPress
Il modo più semplice per ripristinare gli embed Facebook e Instagram in WordPress è quello di usare il plugin gratuito oEmbed Plus di Ayesh Karunaratne. Questo plugin vi aiuta a implementare i nuovi endpoint oEmbed di Facebook per riattivare gli embed di Facebook e Instagram nell’editor a blocchi.
Per iniziare, installate e attivate il plugin.
Nota: oEmbed Plus richiede PHP 7.3 o versioni superiori per funzionare. Se il vostro attuale host WordPress non supporta ancora le versioni di PHP superiori alla 7.3, vi consigliamo vivamente di cercare un nuovo hosting.
Successivamente, create un account su Facebook for Developers, se non ne avete già uno. Poi, create un’App. Nel nostro caso, chiameremo la nostra App “Sito WordPress”, ma potete chiamarla come preferite.
La creazione di un’App genererà automaticamente un App ID per essa.
Potete visualizzare sia l’App ID che l’App Secret andando nel pannello Settings → Basic sotto la bacheca dell’App. Appuntatevi questi due valori perché ne avrete bisogno in seguito.
Visto che siete qui, impostate anche l’URL dell’Informativa sulla privacy, che vi servirà per mandare l’App su Live. Vi raccomandiamo di usare un’ adeguata politica sulla privacy in modo che la vostra App non venga bloccata.
oEmbed Product è abilitato automaticamente per impostazione predefinita, per cui potete lasciarlo così com’è.
Successivamente, andate alla schermata Settings → Writing nella bacheca di WordPress e cercate la sezione Facebook and Instagram Embed Settings. Qui, inserite i valori di App ID e App Secret che avete annotato in precedenza.
In alternativa, potete aggiungere App ID e App Secret al file wp-config.php
. Ecco lo snippet di codice da usare:
define('OEMBED_PLUS_FACEBOOK_APP_ID', '7168...app.id...789');
define('OEMBED_PLUS_FACEBOOK_SECRET', '20e5...app.secret...890xyz');
Non dimenticate di cambiare i valori indicati sopra con i vostri! Una volta fatto, salvate il file.
Se modificate il file wp-config.php
per configurare oEmbed Plus, questo disabiliterà automaticamente i campi del modulo App IDe App Secret nella bacheca di WordPress. In questo modo, potete mantenere le vostre credenziali App segrete agli altri utenti.
Ci siamo, è tutto qui!
Tutti i nuovi embed di Facebook e Instagram useranno ora la nuova API di autenticazione per incorporare contenuti nel vostro sito WordPress.
Altri plugin dedicati ai social media, come Instagram Feed e Social Post Feed, stanno aggiungendo il supporto per i nuovi endpoint oEmbed di Facebook. Tuttavia, questi plugin arrivano con molte altre caratteristiche incluse, quindi potrebbero aggiungere un peso inutile al vostro sito per questo specifico caso d’uso. Se però li state già usando, allora potete dar loro un’occhiata.
Per ora, Facebook è generoso con i limiti tariffari per la loro nuova API. Permettono di fare fino a 5 milioni di richieste al giorno. Poiché WordPress memorizza nella cache le risposte alle API di oEmbed nel database, un embed non farà scattare ulteriori richieste oltre alla prima. Per maggiori informazioni, potete fare riferimento alla documentazione aggiornata di Facebook sugli oEmbed.
Riepilogo
WordPress è il CMS più popolare oggi in uso. Allo stesso modo, Facebook e Instagram sono le piattaforme di social media più usate. Pertanto, questo cambiamento riguarda potenzialmente milioni di siti.
L’integrazione dei contenuti dei social media in WordPress offre un’esperienza più originale e autentica ai visitatori del vostro sito. A partire dal 24 ottobre 2020, molti utenti ignari della modifica avranno difficoltà a incorporare i contenuti di Facebook e Instagram. Ci auguriamo che questo articolo vi aiuti a correggere il problema degli oEmbed di Facebook in WordPress.
Se avete ancora problemi con Facebook e Instagram, fatecelo sapere nei commenti!
Lascia un commento