Configurazione e risoluzione dei problemi di oneboxes

:bookmark: Questa guida spiega come configurare e risolvere i problemi dei onebox in Discourse. Copre le impostazioni dell’amministratore, il funzionamento dei onebox e i passaggi per risolvere i problemi comuni.

:person_raising_hand: Livello utente richiesto: Amministratore

I onebox sono anteprime di link ricche che gli utenti possono creare nei loro post. Mentre gli utenti possono generare facilmente queste anteprime, gli amministratori del sito hanno controlli aggiuntivi e potrebbero dover risolvere i problemi quando i link non vengono visualizzati come previsto.

Configurazione dell’amministratore

Per gestire le impostazioni dei onebox:

  1. Vai al pannello Admin
  2. Naviga nella sezione delle impostazioni del sito
  3. Cerca “onebox”

Vedrai un elenco di impostazioni relative ai onebox:

Alcune impostazioni degne di nota includono:

  • post onebox maxlength: controlla la quantitĂ  di testo inclusa in un onebox
  • enable inline onebox on all domains: abilita i onebox inline, convertendo gli URL semplici in titoli collegati (ad esempio, https://en.wikipedia.org/wiki/Fun_(band) diventa “Fun (band) - Wikipedia”)
  • blocked onebox domains: ti consente di disabilitare i onebox per domini specifici

Come funzionano i onebox

Quando un link viene incluso in un post, Discourse visita la pagina di destinazione e cerca i tag Open Graph o oEmbed, tra cui:

  • Indirizzo del sito
  • Titolo
  • Immagine in primo piano
  • Icona del sito (o favicon)
  • Descrizione (obbligatoria)
  • Prezzo del prodotto (se pertinente)

:warning: Discourse richiede che il tag di descrizione sia presente e contenga testo sufficiente per riassumere la pagina. Senza questo, il link di destinazione non verrĂ  convertito in onebox.

Ecco un esempio di onebox per \u003chttps://discourse.org\u003e che mostra il titolo del sito, l’immagine in primo piano, l’icona e la descrizione:

Risoluzione dei problemi

Se i onebox non funzionano come previsto, prova questi passaggi:

  1. Testa il sito utilizzando iFramely:

    • Incolla il link e verifica se utilizza i meta tag OpenGraph o oEmbed corretti
    • Assicurati che il testo della descrizione sia presente e adeguato
  2. Verifica se la richiesta del onebox viene bloccata:

    • Alcuni host potrebbero bloccare gli user agent “sconosciuti”
    • Verifica che il sito di destinazione non stia bloccando lo user agent di Discourse
  3. Per i link interni che non vengono visualizzati come onebox:

    • Assicurati che il link non si trovi in una categoria protetta
    • I link interni vengono convertiti in onebox solo nelle categorie pubbliche o all’interno della stessa categoria per motivi di sicurezza

Dalla console rails puoi invalidare/recuperare esplicitamente i onebox chiamando i metodi durante il test eseguendo:

[1] pry(main)> Oneboxer.invalidate(url)
=> 0

[2] pry(main)> Oneboxer.onebox(url)
=> "<aside class=\"onebox …(eliso)"

[3] pry(main)> InlineOneboxer.invalidate(url)
=> 0

[4] pry(main)> InlineOneboxer.onebox(url)
=> "<aside class=\"onebox …(eliso)"

Risorse aggiuntive

2 Mi Piace

Questa è una buona risorsa ma sembra essere carente

L’ho fatto e ha restituito una casella, era leggera di contenuti ma sembrava comunque migliore di un semplice link URL

Supponendo che la leggerezza di contenuti sia il problema per cui non viene visualizzata una casella sul mio sito in base al mancato rispetto di questo requisito, cosa si può fare?

Non vedo un’impostazione per visualizzare in una casella i siti che non hanno abbastanza contenuti, quindi è possibile contattare un amministratore del sito per apportare una modifica da parte sua, se sì, cosa bisogna chiedere?

Come aiuta a risolvere il problema della mancata visualizzazione in una casella?

2 Mi Piace