La récuisson est terminée. Quel résultat désordonné ! ![]()
Eh bien, maintenant je comprends pourquoi cette option avait été désactivée.
Nous utilisons WordPress et le premier message contient du HTML complet. Discourse n’a aucun problème pour remplacer le HTML des images par du Markdown, mais une image Markdown ne peut pas être rendue si elle est entourée de HTML (ou plus précisément, il faut au moins une ligne vide au-dessus).
J’ai deux problèmes :
-
Certaines images n’ont pas été téléchargées, probablement à cause de l’attribut
srcset(mais ce n’est pas grave). Les images s’affichent correctement dans le premier message, mais aucune miniature n’est générée. Cela fonctionnait auparavant.Y a-t-il eu un changement cassant dans le plugin empêchant la génération de miniature pour un message contenant déjà du HTML d’image ? Je pense avoir procédé à trois récuissons, sans succès. Existe-t-il une autre méthode pour forcer la régénération de la miniature ? Je veux dire qu’avant, même avec l’option désactivée, une miniature était générée lors de la création du sujet avec n’importe quelle image, ou même après l’avoir modifiée ; ce comportement ne fonctionne plus.
-
Comme mentionné plus haut, certaines images Markdown ne sont pas rendues.
J’ai essayé de voir si une API de plugin était disponible avant la cuisson du message, mais je n’en ai trouvé aucune.
Je suppose que la seule solution consiste à ajouter des sauts de ligne directement dans le message brut concerné dans la base de données via la console Rails, puis à procéder à une nouvelle récuisson.
Actuellement, j’essaie de m’en sortir (je ne connais pas Ruby) en me basant sur le code source de Discourse :
Cela semble fonctionner pour un sujet. Je ne l’ai pas encore exécuté pour tous les sujets. Existe-t-il une meilleure ou plus propre méthode pour résoudre ce problème sans faire cela ?
Post
.where(post_number: 1)
.where("raw LIKE '%upload://%'").each do |post|
post.raw.gsub!(/(!\[.*upload:\/\/.*\))/, "\n\n\\1")
post.save!(validate: false);
post.rebake!
end
Toute aide est appréciée, merci !