Salve,
utilizzo ormai da mesi il plugin “WP Discourse” e ha sempre funzionato bene con articoli composti da galleria + paragrafi.
Ho pubblicato sul blog un articolo contenente solo una galleria di circa 60 immagini, e non viene mostrata su Discourse nel topic collegato. Al suo posto, mi ha estratto prima il testo di un plugin GDPR, e poi il testo del footer.
Come posso risolvere? Devo inserire qualche codice nel file functions.php del tema?
Ho capito che il problema è proprio il punto 3? Nello specifico, ti aspetti di vedere le immagini quando fai clic su “Mostra messaggio completo”. È corretto?
Sì, è corretto. Per i post già pubblicati, tutto funzionava bene. Vedo sia la galleria che il testo dopo aver cliccato sul pulsante “Mostra Post Completo”.
Ho allegato qui un esempio di post funzionante, sia su WordPress che su Discourse.
In questo post ci sono foto come Galleria e del testo.
Se il post contiene solo immagini (inserite come Galleria), Discourse visualizza o il testo del piè di pagina o il messaggio nel popup del plugin “Moove GDPR Cookie Compilation”. Se disattivo il plugin GDPR, vedo il piè di pagina.
Se inserisco un’immagine come “Foto” (blocco Gutenberg), Discourse mostrerà l’immagine ma non la Galleria.
La differenza è che nel caso che hai segnalato, il post di WordPress contiene solo immagini. In questo altro caso, il post include anche del testo. Sarebbe possibile aggiungere del testo prima delle immagini nel post che stai riscontrando problemi?
Sì, ti suggerirei di pubblicare di nuovo il post con del testo e le immagini per vedere se risolve il problema. Se non funziona, possiamo valutare altre opzioni.
Ho appena eliminato l’argomento su Discourse e ho aggiunto del testo prima e dopo il blocco “Galleria” di Gutenberg, ma purtroppo non ha funzionato. Il contenuto è chiaramente visibile nell’anteprima, ma non appena clicco sul pulsante, viene sostituito dal messaggio del plugin GDPR.
Ecco il link al nuovo argomento:
Cosa posso fare ora per indagare e risolvere il problema? Ho anche svuotato la cache di WordPress (LiteSpeed e Cloudflare).
Avete bisogno delle mie impostazioni di WP-Discourse?
Sembra che tu non abbia creato un nuovo post su WordPress. Se riutilizzi lo stesso post su WordPress, lo stesso contenuto di anteprima verrà memorizzato nella cache. Prova a creare un nuovo post su WordPress con le stesse foto, ma con del testo all’inizio.
Il problema di base è che il modo in cui il contenuto viene estratto dal tuo sito prevede l’uso di un gem chiamato Readability, basato sull’algoritmo della modalità Lettura di Mozilla.
In sostanza, ciò che sta accadendo è che l’algoritmo di Readability non funziona bene con contenuti ricchi di immagini. La funzione di anteprima è pensata per post costituiti principalmente da testo.
Sì, in linea di massima. Un modo per verificare è utilizzare la modalità Lettura di Firefox sul tuo post di WordPress per vedere cosa è probabile che produca il gem Readability.
Ho notato che la Modalità Leggibilità di Firefox non appare in quel post della Galleria; proverò ad aggiungere più testo e anche delle descrizioni per le immagini…
Ho notato che nei miei impostazioni di Discourse riesco a trovare solo “allowed_embed_selectors”.
L’ho modificato inserendo le classi CSS del mio tema. Ho anche usato alcuni “trucchetti” per migliorare il punteggio di leggibilità e ha funzionato!
Ho aggiunto più testo, alcuni testi alternativi per le immagini e un “wrapper” globale per i post per aggiungere un tag <article>. Funziona molto bene su Discourse, anche se Firefox mostra il pannello GDPR come contenuto “leggibile”.
Ora ho una domanda. Posso estendere la lightbox di Discourse alle immagini importate da WordPress nell’argomento?
Ho notato che i commenti di WP-Discourse utilizzano il tag <article>, e un’ora fa un membro ha inserito un commento, e il parser ha selezionato quel testo come contenuto principale del post.
Ho dovuto modificare il file del plugin per cambiare il tag, ma so che con il prossimo aggiornamento le modifiche andranno perse.
È possibile risolvere definitivamente questo problema di parsing?
Il modo in cui funziona è che l’anteprima HTML nel post mantiene la fedeltà con il contenuto originale. Per fare questo avresti bisogno di un plugin personalizzato.
Il problema di base è lo stesso. Cercare di ottenere che un post di WordPress composto quasi interamente da immagini sia identico al 1:1 tra WordPress e Discourse non è ciò per cui il software è stato progettato. Il motivo per cui gli incorporamenti di topic (ciò che abilita questa funzionalità sul lato Discourse) utilizzano il gem Readability è che si dà per scontato che si stia trattando con contenuto destinato alla lettura (cioè testo).
Sarebbe possibile avere una sincronizzazione affidabile della galleria fotografica tra WordPress e Discourse, tuttavia dovresti progettare le personalizzazioni (plugin per WordPress e plugin per Discourse) in modo che funzionino in quel modo.