Generatore di incorporamento Facebook

Social Media Video Codice

Introduzione

Il Generatore di incorporamento Facebook di Toollect trasforma qualsiasi URL pubblico di post, video o Pagina Facebook nel codice ufficiale di incorporamento del SDK JavaScript che documenta Facebook – il div fb-post / fb-video / fb-page più il loader sdk.js – con un clic, con un'anteprima dal vivo resa dallo stesso SDK di Facebook prima di copiare.

L'attrito che elimina ti è familiare se hai mai incollato codice Facebook a mano. Il configuratore di Facebook nasconde il plugin Pagina, distribuisce le opzioni di post e video su pagine separate e alterna tra le forme iframe e SDK senza spiegare i compromessi. Scrivere il div a mano fallisce silenziosamente quando un attributo data- è scritto male e il post si renderizza come un semplice link. Questo strumento presenta Post, Video e plugin Pagina affiancati, espone ogni attributo documentato del plugin, scrive la tua scelta di lingua direttamente nell'URL del loader e mostra il render reale nello stesso browser che servirà i tuoi visitatori.

Ogni percorso di codice è solo SDK per progettazione. Il SDK è il formato che Facebook mantiene per tutti e tre i tipi di plugin, l'unico che supporta le lingue di visualizzazione e l'unico che può mantenere coerenti schede e dimensionamento del plugin Pagina. Il generatore include fb-root e il loader quando ti servono e li omette quando il tuo sito carica già il SDK, mantiene l'anteprima onesta su blocchi pubblicità e contenuti privati e non invia mai il tuo link tramite un server Toollect.

Casi d'uso

Incorporare contenuti Facebook compare in più posti di un post del blog, e le tre schede dividono il lavoro in modo naturale.

Blog e contenuti editoriali

Un post di commento che cita un post pubblico, un articolo di cultura che riutilizza un video virale, una recensione che incorpora la timeline di un brand come prova sociale – i casi classici. La modalità Post con la larghezza predefinita di 500 pixel copre la maggior parte delle colonne; la modalità Video mantiene il player in primo piano; il plugin Pagina mostra una timeline dal vivo senza screenshot.

Redazioni e copertura in diretta

I reporter portano dichiarazioni ufficiali e post di testimoni nella copertura continua. La velocità conta e conta anche la verifica – il generatore normalizza i link mobili di condivisione come m.facebook.com e gli URL carichi di tracking in un unico riferimento canonico, e l'anteprima conferma che il post si renderizza ancora prima di pubblicare l'articolo.

Siti di marketing e portfolio

Recensioni dei clienti come timeline Pagina incorporate, video di lancio come player nella pagina, post di annuncio come card. La selezione della lingua rende la cornice circostante nella lingua del visitatore e omettere il loader SDK mantiene le pagine che caricano già il SDK di Facebook libere da script duplicati.

Documentazione e siti community

Note di rilascio che citano un post di lancio, documentazione che fa riferimento a un annuncio di gruppo Facebook, pagine evento che mostrano la scheda Eventi di una Pagina. Mostra testo e caricamento Lazy permettono alle pagine pesanti di restare silenziose fino a quando non scorri vicino.

Come funziona

Lo strumento funziona in cinque passaggi:

  1. Analizza e classifica l'URL – l'input viene confrontato con la grammatica dei link Facebook – ID numerici di 5–20 cifre o ID pfbid, nomi utente di 2–50 caratteri, schede che corrispondono a [a-z][a-z0-9_]* e i tre host ufficiali facebook.com con qualsiasi sottodominio, fb.watch e fb.me. Le chiavi di query di tracking vengono lette e poi ignorate per il routing – l'URL canonica ricostruita non le contiene mai. Le route senza ID come facebook.com/watch senza v o fb.watch senza codice breve vengono rifiutate.
  2. Scegli il tipo di pluginpost / photo / group-post vanno a Post, video / reel a Video, page al plugin Pagina. La barra delle schede segue il link – incollare un URL watch passa automaticamente a Video, incollare un URL Pagina al plugin Pagina – e cambiare scheda manualmente pulisce l'output obsoleto invece di rimbalzare.
  3. Raccogli le tue opzioni – Lingua dal menu a tendina della scheda, larghezza e altezza dai campi numerici, checkbox Pagina per schede e cornice, interruttori video per schermo intero, autoplay e sottotitoli. Ogni modifica viene riportata nell'intervallo valido, riscritta nel campo e rigenera immediatamente.
  4. Costruisci il markup ufficiale – le tue opzioni diventano attributi data-* sul div fb-* e, per il plugin Pagina, l'URL del loader porta la tua lingua come https://connect.facebook.net/{locale}/sdk.js#xfbml=1&version=v26.0. Nessun URL iframe viene costruito – il SDK consuma gli attributi del div al momento del parsing.
  5. Renderizza l'anteprima – il generatore inietta il div più un fb-root nell'host di anteprima, carica o ricarica sdk.js per la locale scelta, chiama FB.XFBML.parse e osserva l'iframe risultante. Tre esiti vengono riportati onestamente – successo, blocco pubblicità o render che non può completarsi.

Cambiare qualsiasi opzione ricostruisce l'intera catena – nuovi attributi, nuovo riquadro codice, anteprima riparsata – così il codice che copi corrisponde sempre a ciò che stai guardando.

Formati URL supportati

Il generatore accetta ogni forma di URL che identifica un post, video o Pagina pubblici sui tre host ufficiali di Facebook e rifiuta tutto il resto con un messaggio specifico. Schema e www. sono opzionali; i sottodomini mobili vengono normalizzati.

Formati accettati

Formato Esempio Scheda Risultato
Post canonico facebook.com/username/posts/1234567890123456 Post fb-post per quel post
Post pfbid facebook.com/nike/posts/pfbid0ABCDEF12345 Post fb-post per quel post
Post di condivisione facebook.com/share/p/Ab12CdEfGh/ Post fb-post per quel post
Storia / permalink facebook.com/story.php?story_fbid=123&id=456 / permalink.php?story_fbid=... Post fb-post per quel post
Foto facebook.com/username/photos/1234567890123456 / photo.php?fbid=... / photo/?fbid=... Post fb-post per quella foto
Post di gruppo facebook.com/groups/999888777666/posts/111222333444555 Post fb-post per quel post di gruppo
Video canonico facebook.com/username/videos/1234567890123456 Video fb-video per quel video
Link Watch facebook.com/watch/?v=10153231379946729 Video fb-video per quel video
Reel facebook.com/username/reels/Ab12CdEfGhIj / facebook.com/reel/Ab12Cd... Video fb-video per quel reel
Pagina per nome utente facebook.com/facebook Plugin Pagina fb-page per quella Pagina
Pagina per ID facebook.com/profile.php?id=100001234567890 Plugin Pagina fb-page per quella Pagina
Vista scheda Pagina facebook.com/facebook/videos Plugin Pagina fb-page per quella Pagina – suffisso scheda ignorato
Dominio breve fb.watch/AbC12dEfXy Rifiutato – i link brevi portano kind:"short" e richiedono l'URL completo
Dominio di reindirizzamento fb.me/nike Plugin Pagina fb-page per quella Pagina

La barra finale, il frammento hash e la stringa di query dopo l'ID sono tollerati e scartati; i suffissi di vista come un segmento numerico di scheda dopo un nome utente sono trattati come vista scheda Pagina, non come risorsa separata.

Formati rifiutati

Forma URL Perché viene rifiutata
fb.watch/AbC12dEfXy Link breve ufficiale – la destinazione non può essere risolta localmente e Facebook non documenta alcuna forma di incorporamento per codici brevi
facebook.com/sharer/sharer.php?u=... / l.php / dialog / tr etc. Route riservate degli strumenti – login, condivisione, tracking – non sono contenuti incorporabili
facebook.com/hashtag/something / search/top/?q=... Route di scoperta – nessun singolo post o Pagina
example.com/facebook/nike o qualsiasi host non Facebook Non è un dominio Facebook
Testo che non è un URL Nessun host da confrontare

Il caso fb.watch merita enfasi perché il pulsante di condivisione dell'app produce ancora quella forma. Il generatore la rifiuta deliberatamente con il messaggio dedicato ai link brevi e ti chiede di aprire il link e copiare invece l'URL completo del post o del video. Incollare l'URL espanso riesce immediatamente.

Anatomia del codice di incorporamento

L'output è il codice che documenta Facebook, con le tue opzioni applicate. Un incorporamento Post con i valori predefiniti appare così:

<div class="fb-post" data-href="https://www.facebook.com/facebook/posts/10153231379946729" data-width="500"></div>
<div id="fb-root"></div>
<script async defer src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v26.0"></script>

Passando in rassegna le parti:

  • La classe del div del pluginfb-post, fb-video o fb-page dice al SDK quale plugin istanziare. Una classe per incorporamento.
  • data-href – l'URL canonica della sezione precedente, con le e commerciali escapate. È l'unico attributo obbligatorio per tutti e tre i plugin.
  • data-width (Post e Video) – la larghezza desiderata in pixel. Post accetta 350–750 con predefinito 500 in questo strumento, Video 220–1920 con predefinito 500. Il SDK di Facebook dimensiona la card a questa larghezza quando possibile.
  • data-show-text – presente quando Mostra testo del post è spuntato. Facebook lo documenta per post e video che contengono una foto; senza di esso il testo può restare nascosto.
  • data-lazy – presente quando Caricamento lazy è spuntato. Rimanda il rendering fino a quando l'incorporamento non viene scrollato vicino.
  • data-allowfullscreen / data-autoplay / data-show-captions (solo Video) – allowfullscreen abilita il pulsante schermo intero, autoplay avvia la riproduzione silenziata al caricamento della pagina su desktop, show-captions mostra i sottotitoli per impostazione predefinita quando disponibili su desktop. Tutti e tre sono assenti quando disattivati.
  • data-tabs / data-height / data-small-header / data-adapt-container-width / data-hide-cover / data-hide-cta / data-show-facepile (solo plugin Pagina) – tabs elenca le schede visibili come timeline,events,messages con predefinito timeline, height con predefinito 500, i booleani mappano direttamente sugli interruttori di cornice del plugin.
  • Il loaderfb-root più sdk.js#xfbml=1&version=v26.0 da connect.facebook.net/{locale}/. en_US è un esempio – la tua scelta di lingua scrive il segmento locale. La checkbox Include the fb-root div and sdk.js loader rimuove l'intero blocco quando il tuo sito carica già il SDK.

Un plugin Pagina con impostazioni non predefinite mostra il set più completo di attributi:

<div class="fb-page" data-href="https://www.facebook.com/facebook" data-tabs="timeline,events" data-width="340" data-height="500" data-small-header="false" data-adapt-container-width="true" data-hide-cover="false" data-hide-cta="false" data-show-facepile="true"></div>

Opzioni di incorporamento

Ogni controllo corrisponde a un attributo. Valori predefiniti tra parentesi.

Lingua (predefinita la lingua del tuo sito Toollect – zh-hant diventa zh_TW, zh-hans zh_CN, en en_US e allo stesso modo per de, es, fr, it, ja, nl, pt, sv) – mostra 60 locali da en_US a af_ZA con nomi localizzati per lingua pagina di Toollect. Ogni selezione esplicita, incluso l'inglese, viene scritta nell'URL del loader. Il SDK localizza il contorno dell'incorporamento – timestamp, etichette del pulsante Mi piace – mai il testo del post stesso.

Larghezza (Post 500, Video 500, Pagina 340) – digitata come numero esatto, riportata nell'intervallo valido appena lasci il campo. Post 350–750, Video 220–1920, Pagina 180–500. I valori fuori intervallo saltano al limite più vicino – 5000 su Video diventa 1920.

Altezza (Pagina 500) – solo plugin Pagina, 70–2048. Post e video non portano attributo altezza – il SDK dimensiona le loro card dalla larghezza e dal contenuto.

Mostra testo del post con foto e video (disattivato) – scrive data-show-text="true" per Post e per Video aggiunge (solo desktop) nell'etichetta per corrispondere alla nota di Facebook che l'interruttore testo riguarda solo il rendering desktop.

Caricamento lazy fino a scroll vicino (disattivato, tutte le schede) – scrive data-lazy="true".

Consenti riproduzione a schermo intero (disattivato, Video) – scrive data-allowfullscreen="true".

Riproduzione automatica al caricamento della pagina (silenziata, solo desktop) (disattivato, Video) – scrive data-autoplay="true". Facebook lo documenta come autoplay silenziato solo su desktop.

Mostra sottotitoli per impostazione predefinita quando disponibili (solo desktop) (disattivato, Video) – scrive data-show-captions="true", solo desktop.

Schede da mostrare (Timeline, plugin Pagina) – tre checkbox timeline / events / messages unite come data-tabs="timeline,events,messages". Le schede deselezionate sono semplicemente assenti dalla lista.

Usa header piccolo / Adatta alla larghezza del contenitore / Nascondi foto di copertina / Nascondi call-to-action personalizzata / Mostra foto profilo degli amici (plugin Pagina) – ciascuno scrive il suo booleano data-*. Adatta è attivo per impostazione predefinita; facepile è attivo per impostazione predefinita.

Includi il div fb-root e il loader sdk.js (attivato) – controlla se il blocco loader viene aggiunto. I siti che caricano già sdk.js globalmente dovrebbero deselezionarlo.

Lingua e internazionalizzazione

Le FAQ sui post incorporati di Facebook e la guida all'internazionalizzazione del SDK JavaScript dicono entrambe la stessa cosa – la lingua di visualizzazione dei plugin social proviene dal segmento locale dell'URL sdk.js. Questo strumento lo rende visibile.

La tua selezione di lingua fluisce in due posti:

  • Il codice generato – https://connect.facebook.net/{locale}/sdk.js#xfbml=1&version=v26.0 con locale come en_US, zh_TW, fr_FR o ja_JP.
  • L'anteprima dal vivo – cambiare il menu a tendina ricostruisce l'host di anteprima, rimuove qualsiasi script SDK caricato in precedenza che porta una locale diversa, elimina window.FB e carica la nuova locale da zero prima di chiamare FB.XFBML.parse.

Il valore predefinito segue automaticamente la lingua del tuo sito Toollect – visitare toollect.com/zh-hant/tools/facebook-embed-generator/ preseleziona zh_TW, zh-hans preseleziona zh_CN, ja preseleziona ja_JP e le lingue europee mappano alla loro forma territoriale (de→de_DE, fr→fr_FR e così via), con fallback su en_US altrimenti. Non c'è opzione Automatico – Facebook richiede una locale esplicita, quindi lo strumento ne scrive sempre una.

Cosa cambia e cosa no:

Aspetto Segue la locale Resta così come scritto
Formato timestamp
Etichette pulsanti Mi piace / Condividi
Testo del post, titolo video, nome Pagina
Commenti sul post

Lingue di visualizzazione supportate

Facebook documenta circa cento locali per il SDK. Il menu a tendina offre le sessanta più usate, con nomi localizzati per lingua pagina di Toollect. Il set completo documentato include:

af_ZA Afrikaans · ar_AR Arabo · az_AZ Azero · bg_BG Bulgaro · bn_IN Bengalese · bs_BA Bosniaco · ca_ES Catalano · cs_CZ Ceco · da_DK Danese · de_DE Tedesco · el_GR Greco · en_GB Inglese (UK) · en_US Inglese (US) · es_ES Spagnolo (Spagna) · es_LA Spagnolo · et_EE Estone · eu_ES Basco · fa_IR Persiano · fi_FI Finlandese · fr_FR Francese · gl_ES Galiziano · gu_IN Gujarati · he_IL Ebraico · hi_IN Hindi · hr_HR Croato · hu_HU Ungherese · hy_AM Armeno · id_ID Indonesiano · is_IS Islandese · it_IT Italiano · ja_JP Giapponese · jv_ID Giavanese · ka_GE Georgiano · km_KH Khmer · kn_IN Kannada · ko_KR Coreano · lo_LA Lao · lt_LT Lituano · lv_LV Lettone · mk_MK Macedone · ml_IN Malayalam · mr_IN Marathi · ms_MY Malese · my_MM Birmano · nb_NO Norvegese · ne_NP Nepalese · nl_NL Olandese · pa_IN Punjabi · pl_PL Polacco · pt_BR Portoghese (Brasile) · pt_PT Portoghese (Portogallo) · ro_RO Rumeno · ru_RU Russo · si_LK Singalese · sk_SK Slovacco · sl_SI Sloveno · sq_AL Albanese · sr_RS Serbo · su_ID Sundanese · sv_SE Svedese · sw_KE Swahili · ta_IN Tamil · te_IN Telugu · th_TH Thai · tl_PH Filippino · tr_TR Turco · uk_UA Ucraino · ur_PK Urdu · vi_VN Vietnamita · zh_CN Cinese (semplificato) · zh_HK Cinese (Hong Kong) · zh_TW Cinese (tradizionale)

Qualsiasi locale oltre questo menu è valida nell'URL del loader con lo stesso pattern – https://connect.facebook.net/{locale}/sdk.js – ma le sessanta qui sopra coprono ogni lingua che Toollect stesso offre, quindi incollare il codice raramente richiede modifiche.

Utilizzo

  1. Incolla un URL Facebook nell'input – qualsiasi formato accettato dalle tabelle sopra, inclusi m.facebook.com e link brevi fb.me che si risolvono in una Pagina. Schema e www. sono opzionali.
  2. Premi Genera o Invio. Il codice appare nel riquadro di output e l'anteprima si apre automaticamente, mostrando il render reale del SDK. La barra URL guida anche la scheda – un link watch passa a Video, un link Pagina al plugin Pagina.
  3. Scegli la scheda se serve – Post per post, foto e post di gruppo; Video per video e reel; plugin Pagina per Pagine. Cambiare rigenera con il set di opzioni di quella scheda, le schede non corrispondenti puliscono l'output obsoleto.
  4. Imposta la Lingua – il valore predefinito corrisponde già alla lingua del tuo sito, ma puoi scegliere qualsiasi delle sessanta locali. L'URL del loader generato e l'anteprima cambiano immediatamente.
  5. Regola le opzioni rimanenti – larghezza, altezza per Pagina, interruttori header e cover, caricamento lazy. Ogni modifica rigenera; riquadro codice e anteprima non divergono mai.
  6. Controlla la diagnostica dell'anteprima – se non appare alcuna card, l'avviso sopra l'output ti dice se il SDK è stato bloccato, il contenuto non può renderizzarsi o l'URL punta a una timeline personale invece che a una Pagina.
  7. Copia il codice e incollalo nella tua pagina dove l'incorporamento deve apparire. Se il tuo sito carica già sdk.js, deseleziona l'inclusione del loader per evitare un duplicato.

Un input che non corrisponde a nessun formato supportato pulisce l'output e si spiega nell'area rossa di errore – o il messaggio di link non valido o il messaggio di link breve. Cancella reimposta input, codice e anteprima in un solo passaggio.

Tutorial

Segui un link reale attraverso tutte e tre le schede.

Passaggio 1 – Incolla un link post così come lo condivide l'app. Copia un URL post con parametri di tracking:

https://m.facebook.com/facebook/posts/pfbid0AbCdEfGhIjKlMnOpQrStUvWxYz1234567890?__tn__=K-R

Premi Genera. Il parser legge oltre il sottodominio m. e il tracking __tn__ fino a facebook, post pfbid0AbCdEfGhIjKlMnOpQrStUvWxYz1234567890, la scheda resta Post e il codice mostra data-width="500" con il loader en_US perché questo tutorial è sul sito inglese. L'anteprima si apre e la card si renderizza a 500 pixel.

Passaggio 2 – Cambia la Lingua. Passa la Lingua Post a cinese tradizionale zh_TW. Il loader diventa https://connect.facebook.net/zh_TW/sdk.js#xfbml=1&version=v26.0 e l'anteprima ricarica il SDK – il timestamp vicino al post passa alla sua forma cinese mentre il testo del post resta esattamente come scritto.

Passaggio 3 – Restringi. Digita 600 in Larghezza e lascia il campo. Il div guadagna data-width="600" e la card si restringe. Prova a digitare 9999 e uscire – il campo salta a 750, il massimo di Post.

Passaggio 4 – Passa a Video. Nell'input sostituisci l'URL post con un video:

https://www.facebook.com/facebook/videos/10153231379946729/

Premi Genera. Lo strumento passa a Video, il codice diventa <div class="fb-video" data-href="https://www.facebook.com/facebook/videos/10153231379946729" data-width="500"> e il menu Lingua mostra lo stesso predefinito en_US. Spunta Autoplay e Mostra sottotitoli – ciascuno scrive il suo data-* con la nota solo desktop mantenuta nell'etichetta.

Passaggio 5 – Plugin Pagina. Incolla https://www.facebook.com/facebook e premi Genera. La scheda plugin Pagina si apre con data-tabs="timeline" e il set completo di cornice. Spunta Eventi e Messaggi – l'attributo diventa data-tabs="timeline,events,messages". Cambia Larghezza a 500 e Altezza a 700 – entrambi gli attributi si aggiornano. L'anteprima mostra la timeline, la cover e il facepile della Pagina esattamente come il codice sul tuo sito.

Passaggio 6 – Copia e pubblica. Premi Copia e incolla in una pagina HTML semplice che carica già sdk.js – deseleziona il loader prima di copiare. Apri la pagina – il post, il video e la Pagina si renderizzano ciascuno alle larghezze che hai impostato, nelle lingue che hai scelto.

Anteprima e diagnostica

L'anteprima esegue il sdk.js autentico di Facebook contro il tuo div esatto da buildSdkCode, quindi fallisce esattamente dove fallirà la tua pagina. L'host mostra uno spinner mentre sdk.js si scarica e FB.XFBML.parse viene eseguito, poi appare uno dei quattro esiti:

Stato Cosa significa Cosa fare
Card / video / timeline si renderizza L'incorporamento è valido e pubblico Copia e incolla – lo stesso render apparirà sul tuo sito
"Impossibile caricare il SDK Facebook — spesso un ad blocker" Il browser non è riuscito a scaricare connect.facebook.net/{locale}/sdk.js affatto Metti connect.facebook.net nella lista bianca del blocco o prova una finestra privata pulita. L'incorporamento pubblicato fallirà allo stesso modo per i visitatori con quel blocco
"Facebook non ha renderizzato l'anteprima entro 15 secondi" Il SDK si è caricato ma non ha prodotto alcun iframe Il contenuto può essere non pubblico, con restrizione di età o paese, eliminato, o l'autore ha disabilitato l'incorporamento. Apri il link originale su facebook.com per controllare – se è visibile lì ma non qui, l'incorporamento è disattivato
"Questo URL potrebbe essere un profilo personale — il plugin Pagina funziona in modo affidabile solo con le Pagine Facebook" Il SDK ha renderizzato un iframe rimasto a 0 o sotto i 70 pixel per diversi polling, o FB.Event ha segnalato un errore di render Il plugin Pagina è progettato per le Pagine – le timeline personali condividono le stesse forme di URL come /username e profile.php?id=..., quindi un controllo statico classificherebbe male Pagine reali. Prova una Pagina nota come facebook.com/facebook – se si renderizza, l'avviso segnala correttamente un URL personale

Entrambi gli avvisi temporizzati scattano solo dopo attese generose – venti secondi per il download del SDK, quindici in più per il render – così le connessioni lente non attivano falsi allarmi. Un post incorporabile si renderizza ampiamente dentro quelle finestre e un plugin Pagina di profilo personale mostra l'avviso giallo entro circa tre secondi dopo che l'iframe resta a dimensione zero.

Un dettaglio utile da sapere: il generatore traccia loadedLocale. Cambiare Lingua dopo un render riuscito rimuove il precedente tag script sdk.js, pulisce window.FB e carica la nuova locale da zero prima del parsing. Le card precedentemente renderizzate della locale precedente vengono eliminate dall'host di anteprima prima del nuovo parsing, così l'anteprima corrisponde sempre all'URL del loader che copierai.

Consigli utili

  • Abbinalo al Parser URL Facebook. Il parser analizza e pulisce un link – tipo, nome utente, ID, chiavi di tracking rimosse – mentre questo generatore trasforma il link pulito in codice. Archivia con il parser, pubblica con il generatore.
  • Un loader, molti incorporamenti. Le pagine con più incorporamenti Facebook dovrebbero caricare sdk.js una volta sola – genera il primo incorporamento con il loader spuntato, gli altri deselezionati, o carica il SDK tu stesso nel template del sito e omettilo ovunque. Il div fb-root serve anche una sola volta per pagina.
  • Progetta per la colonna, poi imposta la larghezza. Le card Facebook hanno un limite visivo intorno alle larghezze nella tabella opzioni; l'anteprima mostra il risultato reale alla dimensione del tuo contenitore prima di confermare. Digita un valore esatto in pixel – 567 è valido – e il clamp lo correggerà solo se esce dall'intervallo documentato.
  • Usa la modalità Video per i post incentrati sul clip. Un video incorporato tramite il plugin Post si renderizza come card statica – tramite fb-video si renderizza come player con i controlli autoplay e sottotitoli che documenta il plugin.
  • Fissa la lingua esplicitamente. Lasciare la cornice in balia del <html lang> della pagina host rende l'output dipendente da dove viene incollato. Ogni selezione esplicita, en_US incluso, scrive la locale nel codice e riproduce le stesse etichette indipendentemente dall'host.
  • Caricamento lazy nelle pagine pesanti. Un articolo con tre timeline plugin Pagina beneficia direttamente di data-lazy – il SDK rimanda il parsing fino a quando l'incorporamento non viene scrollato vicino.
  • Mantieni minime le schede del plugin Pagina. Ogni scheda extra aggiunge altezza e costo di rete – solo timeline è il render iniziale più veloce; aggiungi events e messages solo quando la pagina li usa davvero.

Alternative

In quale altro modo puoi portare contenuti Facebook in una pagina?

Metodo Markup ufficiale Copertura opzioni Anteprima dal vivo Dipendenze
Questo strumento Sì – div SDK con data-* documentato Set completo con 60 lingue, schede Pagina e controlli player Sì, con diagnostica a tre stati Nessuna – browser verso Facebook diretto
Configuratore plugin Pagina Facebook (developers.facebook.com) Sì – stesso div SDK Solo Pagina, nessuna unione Post/Video, guida larghezza limitata Solo nel configuratore Account Facebook
Div fb-* scritto a mano + sdk.js Forma corretta se fatto con cura Qualsiasi cosa tu scriva – facile sbagliare No sdk.js
URL iframe autonomo plugins/post.php Forma iframe legacy Sottoinsieme – nessuna lingua, nessun lazy, nessuna scheda Pagina come data- No Nessuna
API Graph Facebook (/{id}?fields=... + renderer personalizzato) No – solo JSON Totale, costruito da te Costruiscilo tu App, token, revisione
Servizi di incorporamento di terze parti Il loro markup wrapper Variabile A volte Il loro script e tracking

Il configuratore proprio di Facebook è l'alternativa più vicina e la fonte dello stesso vocabolario data-* – ma separa Post, Video e Pagina in pagine diverse, non offre alcun avviso personale vs Pagina e non produce mai un'unione Post/Video/Pagina con la lista completa di lingue dello strumento. La rotta API Graph compra controllo totale al prezzo di un'app, un token e una revisione continua e ti lascia comunque il rendering. I servizi di terze parti interpongono i loro script. Il generatore occupa la via di mezzo pratica – markup ufficiale, opzioni complete, conferma visiva immediata.

Confronto con le API ufficiali

Due superfici ufficiali toccano l'incorporamento Facebook e il generatore è costruito direttamente su quella più amichevole e senza chiave.

Capacità Social Plugins + JavaScript SDK Graph API
Scopo URL → incorporamento renderizzato, lato client Dati completi della piattaforma e pubblicazione
Autenticazione Nessuna Token utente o app, spesso con revisione
Costo Gratis Gratis per letture di base, con limite di frequenza, revisione per permessi estesi
Restituisce codice pronto da incollare Sì – il div fb-* più il loader sdk.js No – JSON che renderizzi tu
Controllo lingua Sì – segmento locale sdk.js Irrilevante – tu renderizzi la vista
Limiti di frequenza Nessuno documentato per SDK/plugin Limiti Graph documentati

Il generatore non chiama alcun endpoint Graph. Costruisce il markup Social Plugin per regola, rispecchiando ciò che emetterebbe il configuratore, e si appoggia allo stesso FB.XFBML.parse del SDK per il rendering. L'API Graph non interviene – recuperare dati post tramite essa richiederebbe un token e ti lascerebbe comunque il rendering, mentre il SDK renderizza già la card ufficiale gratis.

Generatore vs parser URL

Toollect offre due strumenti Facebook che accettano gli stessi link e la divisione del lavoro merita uno sguardo:

Domanda Parser URL Questo generatore
Quali tipi di link? Tutti gli host e tipi Facebook – post, video, reel, foto, post di gruppo, pagine, più link brevi fb.watch/fb.me e liste di parametri di tracking Post, video e Pagine pubblici che possono essere incorporati
Cosa produce? URL canoniche pulite, URL di incorporamento e di condivisione, lista parametri rimossi Codice di incorporamento SDK pronto da incollare
Pulisce i parametri di tracking? Sì – elenca ogni chiave rimossa come __tn__ e famiglie utm_* Non necessario – l'output è codice appena generato
Risolve fb.watch? Sì – conserva la canonica breve e la segnala come kind:"short" con errore dedicato No – chiede l'URL completo di post o video
Richieste di rete? Zero – tutto è regex locale L'anteprima carica sdk.js da connect.facebook.net e l'iframe renderizzato da Facebook
Mostra il contenuto del post? Solo struttura – nessun dato post L'anteprima mostra il post, video o Pagina reali renderizzati

Il parser è l'analista; il generatore è il costruttore. Un flusso di pubblicazione usa legittimamente entrambi in ordine – analizza per identificare e normalizzare a cosa punta un link di condivisione disordinato, poi genera per metterlo nella pagina. Concordano sulla grammatica per costruzione, quindi un link che il parser accetta come post o video incorporabile è un link che questo generatore incorpora e un link che questo generatore rifiuta è spiegato dal parser.

Cosa non fa

I limiti, nominati perché lo strumento non venga mai sopravvalutato:

  • Non incorpora link brevi fb.watch direttamente. Un link breve non porta alcuna destinazione finché Facebook non reindirizza. Incolla invece l'URL espanso del post o del video.
  • Non distingue in modo affidabile una Pagina da un profilo personale solo dall'URL. Entrambi condividono facebook.com/{username} e profile.php?id=.... Una allowlist statica bloccherebbe Pagine reali o lascerebbe passare profili personali – entrambi i casi accadono – quindi lo strumento genera il codice per qualsiasi URL a forma di Pagina e mostra un avviso giallo in anteprima solo quando il SDK renderizza un iframe nullo o minuscolo o segnala un errore di render.
  • Non aggira privacy o restrizione. Post privati, post di gruppo che il visualizzatore non può vedere, Pagine con restrizione di età o paese e autori che hanno disabilitato l'incorporamento producono codice corretto che non renderizza nulla o una vista limitata dove persino il configuratore proprio di Facebook non mostrerebbe nulla.
  • Non recupera né verifica il contenuto del post prima del rendering. La validazione è grammaticale – se il contenuto esiste ed è incorporabile lo risponde solo il SDK quando analizza il div.
  • Non stilizza la card. Colori, font e cornice dentro il plugin renderizzato sono di Facebook. Solo presenza e dimensione – mostra testo, cover, facepile, lazy e larghezza/altezza numeriche – sono tue.
  • Non installa il codice. Ciò che copi è ciò che incolli; lo strumento non può arrivare al tuo CMS o page builder.

Risoluzione dei problemi

Problema Causa Soluzione
"Nessun link Facebook incorporabile trovato" Host non Facebook o route riservata come sharer.php / hashtag Usa un URL post, video o Pagina su facebook.com, fb.watch o fb.me
"I link brevi fb.watch non possono essere incorporati direttamente" Link breve ufficiale – destinazione non risolvibile localmente Apri il link e copia l'URL completo di post o video
Giallo "Questo URL potrebbe essere un profilo personale" con URL dall'aspetto Pagina Il SDK ha renderizzato un iframe vuoto o minuscolo o ha segnalato un errore di render – le stesse forme di URL servono sia Pagine sia timeline Prova una Pagina nota come facebook.com/facebook – se si renderizza, l'avviso segnala correttamente un URL personale. Per una Pagina reale che avvisa ancora, la Pagina potrebbe essere ristretta o non pubblicata
"Impossibile caricare il SDK Facebook" Ad blocker, protezione tracking o blocco di rete su connect.facebook.net Metti connect.facebook.net nella lista bianca per questa pagina e per i tuoi visitatori prova di nuovo in una finestra privata
"Facebook non ha renderizzato l'anteprima entro 15 secondi" Contenuto non pubblico o ristretto, o indisponibilità temporanea di Facebook Apri il link originale su facebook.com – se richiede login o mostra un interstitial di restrizione, l'incorporamento si comporterà allo stesso modo sul tuo sito
La larghezza digitata è saltata a 500 / 1920 Valore fuori intervallo riportato al blur Intenzionale – lo strumento rispecchia gli intervalli documentati di Facebook; digita entro l'intervallo mostrato in Opzioni di incorporamento
Funziona in anteprima, vuoto sul mio sito CSP del sito blocca domini Facebook o il CMS ha rimosso il div Aggiungi https://connect.facebook.net a script-src e https://www.facebook.com / https://*.facebook.com / https://*.fbcdn.net a frame-src; incolla in HTML grezzo, non in un editor visuale
Hai cambiato la lingua ma il testo del post è rimasto straniero Per progettazione – la locale localizza la cornice del widget, mai il contenuto Atteso – il post viene mostrato così come scritto
[Violation] Permissions policy violation: unload nella console Rumore console perché il SDK di Facebook registra un handler unload che la policy dei permessi della pagina blocca Innocuo – né l'anteprima né il codice generato sono influenzati

Privacy e gestione dei dati

Questo strumento è onesto sul suo traffico.

  • La generazione stessa è locale. Analizzare l'URL, mapparlo su una scheda e assemblare il div fb-* avviene nel tuo browser con operazioni su stringhe JavaScript. Nessun server Toollect vede il link che incolli.
  • L'anteprima carica la macchina di Facebook. Renderizzare la card recupera sdk.js da connect.facebook.net nella locale che hai scelto, chiama FB.init e FB.XFBML.parse e l'iframe renderizzato proviene da facebook.com e fbcdn.net – precisamente il traffico che il codice che copi produrrà nei browser dei tuoi lettori.
  • La selezione della lingua è integrata nel codice. Scegliere ja_JP scrive quella locale nell'URL del loader che incolli; i browser dei tuoi visitatori recupereranno il SDK di quella locale. Nessuna preferenza viene memorizzata da Toollect.
  • Nessun account, nessun salvataggio, nessuna analytics. Lo strumento non mantiene stato tra le visite oltre l'host di anteprima in memoria; chiudere la scheda termina tutto.
  • Pubblicare il codice significa che i tuoi visitatori parlano con Facebook. Questa è la natura dell'incorporare contenuti social di terze parti – vale la pena dirlo chiaramente. Se ti serve un flusso Facebook strettamente offline, il Parser URL Facebook di questo sito svolge l'intero lavoro con zero richieste di rete.

Specifiche tecniche

Dettagli:

  • Output – div SDK fb-post / fb-video / fb-page con attributi data-* documentati più fb-root e sdk.js#xfbml=1&version=v26.0 da https://connect.facebook.net/{locale}/sdk.js; Include the fb-root div and sdk.js loader rimuove il blocco loader quando disattivato
  • Grammatica input – host facebook.com con qualsiasi sottodominio, fb.watch, fb.me; nome utente 2–50 caratteri [A-Za-z0-9.]; schede [a-z][a-z0-9_]* con secondi segmenti numerici rifiutati; ID 5–20 cifre o pfbid[1,200]; codici brevi 5–40 alfanum; lista riservata 43 voci; profile.php?id= e /username entrambi instradano a Pagina in attesa di verifica al momento del render
  • URL canoniche di output – https://www.facebook.com/{username} o profile.php?id= per Pagine, .../posts/{id} / share/p/{id}/ / story.php?story_fbid=... per post, .../videos/{id} o watch/?v= per video, .../reels/{id} / reel/{id} per reel, .../photo/?fbid= per foto, .../groups/{gid}/posts/{id} per post di gruppo
  • Dimensioni – Post 350–750 predefinito 500, Video 220–1920 predefinito 500, Pagina larghezza 180–500 predefinito 340 più altezza 70–2048 predefinito 500; data-width/data-height scritti direttamente, nessun dimensionamento iframe coinvolto
  • Lingue – qualsiasi dei 60 fbeLangCodes selezionabile; fbeLangDefault segue la lingua pagina Toollect – zh-hant→zh_TW, zh-hans→zh_CN, en→en_US, de→de_DE, es→es_ES, fr→fr_FR, it→it_IT, ja→ja_JP, nl→nl_NL, pt→pt_BR, sv→sv_SE; locale scritta nell'URL del loader e onorata dal reload SDK anteprima tramite tracciamento loadedLocale
  • Ciclo di vita anteprima – renderPreview inietta fb-root + div fb-*, loadSdkJs(locale, cb) gestisce sdk.js cachato con reload sensibile alla locale (rimuove vecchio script e window.FB al cambio), FB.XFBML.parse invocato sull'host, startWatcher sonda l'iframe ogni 500 ms fino a 30 tentativi (15 s) e fino a 6 tentativi di 0×0 persistente (~3 s) prima dell'avviso profilo personale, setPreviewLoading unificato su quattro punti di uscita, link fbe-fallback punta a lastCanonical su qualsiasi diagnostica
  • Supporto browser – tutti i browser moderni con API appunti e supporto script async/defer; il rendering SDK richiede esecuzione script di terze parti e raggiungibilità di connect.facebook.net

Caratteristiche

  • Genera con un clic il codice ufficiale del SDK JavaScript di Facebook per post, video e plugin Pagina
  • Anteprima dal vivo resa dallo stesso sdk.js di Facebook prima di copiare – con diagnostica di errore e timeout del SDK
  • Scegli tra 60 lingue di visualizzazione – la tua scelta viene scritta nell'URL del loader sdk.js per i tuoi visitatori
  • Perfeziona ogni opzione ufficiale del plugin – larghezza, schede Pagina, cover, header, facepile e lazy loading
  • Output solo SDK che funziona su qualsiasi sito – fb-root e loader opzionali inclusi o omessi su richiesta
  • Gratis e nel browser – nessuna chiave API, nessun account, nessun proxy server di Toollect

Domande frequenti

Cosa genera il Generatore di incorporamento Facebook?
Costruisce lo snippet ufficiale del SDK JavaScript che Facebook documenta per incorporare contenuti – un div con classe fb-post, fb-video o fb-page più il loader sdk.js. Quando lo inserisci nella tua pagina con il SDK di Facebook, il div viene sostituito da una card completamente renderizzata, un player video o una timeline Pagina dentro un iframe servito da facebook.com. Lo strumento non inventa markup – assembla esattamente gli attributi che genererebbe il configuratore di plugin di Facebook.
Quali link di Facebook puoi incorporare e quali vengono rifiutati?
Post, foto e post di gruppo vanno nella scheda Post, video e reel in Video e le Pagine nel plugin Pagina. I link su facebook.com con qualsiasi sottodominio come m.facebook.com, più i domini brevi ufficiali fb.watch e fb.me, sono accettati. Il generatore normalizza i parametri di tracking e i suffissi di visualizzazione e mostra la forma canonica. I link brevi fb.watch non possono essere incorporati direttamente e richiedono l'URL completo del post o del video, mentre gli host non Facebook e gli URL incompleti vengono rifiutati con un messaggio dedicato.
Perché il generatore offre solo il codice SDK JavaScript e non un iframe?
Il codice SDK è il formato che Facebook mantiene per i tre tipi di plugin e l'unico che supporta selezione della lingua, ridimensionamento automatico e set completo di opzioni di visualizzazione. Un iframe autonomo può ancora renderizzarsi ma perde il controllo della lingua e il comportamento ufficiale di dimensionamento. Mantenere un unico percorso di codice semplifica anche la diagnostica – l'anteprima esegue lo stesso SDK che userà la tua pagina.
Come funziona l'impostazione Lingua?
La tua scelta viene scritta nell'URL del loader sdk.js – per esempio https://connect.facebook.net/zh_TW/sdk.js per il cinese tradizionale. Facebook localizza la cornice circostante dell'incorporamento come timestamp ed etichette delle azioni in quella lingua, mentre il testo del post resta così come è stato scritto. L'anteprima ricarica il SDK quando cambi lingua e la selezione predefinita segue la lingua del sito Toollect – per esempio zh-hant diventa zh_TW e zh-hans diventa zh_CN.
Perché l'anteprima del mio plugin Pagina mostra un avviso o resta vuota?
Lo strumento esegue il SDK di Facebook nel tuo browser. Se lo script del SDK non può essere scaricato affatto vedi l'avviso del blocco pubblicità. Se l'iframe non appare mai entro 15 secondi vedi l'avviso di timeout – spesso un post privato, una restrizione di età o paese, o l'incorporamento disabilitato dall'autore. Se l'iframe appare ma resta a 0 o sotto i 70 pixel per diversi secondi vedi l'avviso del profilo personale – il plugin Pagina è progettato per le Pagine e le timeline personali condividono le stesse forme di URL delle Pagine, quindi il controllo può avvenire solo dopo il rendering.
In cosa si differenzia dal Parser URL Facebook di questo sito?
Il parser URL scompone qualsiasi link Facebook – tipo, nome utente, ID, ID pagina – rimuove decine di parametri di tracking e ricostruisce URL canoniche, di incorporamento e di condivisione pulite. Questo generatore lavora nella direzione opposta – trasforma un link riconosciuto in markup SDK pronto da incollare per il tuo sito. Entrambi gli strumenti condividono la stessa grammatica URL, quindi un link che il parser accetta come post, video o Pagina è un link che questo generatore incorporerà e un link che questo generatore rifiuta viene spiegato dal parser.
ESC