Wordpress emoji e Discourse

@Canapin Ciao :slight_smile: Aggiornamento su questa questione.

Il problema si presenta quando:

  1. Hai abilitato l’impostazione “contenuto completo del post” in wp-discourse
  2. Hai creato un post su WordPress con almeno una riga di contenuto prima dell’inserimento delle emoji.

Innanzitutto, potresti confermarmi che è esattamente ciò che hai fatto in questo caso (in particolare l’impostazione “contenuto completo del post”)?

In queste circostanze, il plugin wp-discourse invia HTML a Discourse, che viene importato come un embed di argomento. Quando Discourse tenta di elaborare l’HTML durante la creazione di un post, possono sorgere diversi problemi, incluso questo. Ad esempio, un altro problema che si verifica è Fix broken images for posts created by the WP Discourse and RSS plugins.

Sul fronte tecnico (so che sei esperto :wink: ), puoi vedere direttamente il problema se provi a utilizzare la classe Ruby di Discourse pertinente per analizzare una stringa HTML contenente emoji Unicode.

Dettagli tecnici del problema
rails c
PrettyText.cook("<p>Questa è la frase prima delle emoji</p><div>🦊🦊🦊🦊</div>")
=> "<p>Questa è la frase prima delle emoji</p><div>🦊🦊🦊🦊</div>"

visto che

rails c
PrettyText.cook("🦊🦊🦊🦊")
=> "<p><img src=\"/images/emoji/twitter/fox_face.png?v=9\" title=\":fox_face:\" class=\"emoji\" alt=\":fox_face:\"><img src=\"/images/emoji/twitter/fox_face.png?v=9\" title=\":fox_face:\" class=\"emoji\" alt=\":fox_face:\"><img src=\"/images/emoji/twitter/fox_face.png?v=9\" title=\":fox_face:\" class=\"emoji\" alt=\":fox_face:\"><img src=\"/images/emoji/twitter/fox_face.png?v=9\" title=\":fox_face:\" class=\"emoji\" alt=\":fox_face:\"></p>"

Quindi cosa stiamo facendo a riguardo?

In generale, alcuni problemi nella conversione dell’HTML completo dei post di WordPress in post di Discourse non sono inaspettati. La registrazione del post di WordPress su Discourse è proprio questo: una registrazione del post.

Detto questo, @simon e io stiamo lavorando attivamente per migliorare tale processo sia in wp-discourse che in Discourse stesso, con un’adeguata priorità. In questa direzione, ci concentreremo prima su alcune altre cose (ad esempio, il problema delle immagini rotte menzionato sopra) prima di occuparci di questo. Quindi dovrai attendere ancora un po’ per una soluzione ufficiale a questo problema.