Corriger les images cassées pour les publications créées par les plugins WP Discourse et RSS

Vous pouvez le faire depuis la section Connexion de la page des paramètres de votre site Discourse. Sélectionnez le paramètre connexion requise pour empêcher les utilisateurs anonymes d’accéder au site.

Cela signifie que le plugin WP Discourse peut effectuer des appels API vers votre site Discourse, mais cela ne signifie pas que votre site WordPress autorise les requêtes provenant de Discourse. Lorsque vous cliquez sur le bouton « Afficher l’article complet », Discourse tente d’effectuer une requête vers votre site WordPress pour extraire le contenu de l’article. Il est probable que cette requête soit bloquée.

Merci pour ces excellentes informations. J’ai désactivé la connexion (super astuce !) et je vais probablement attendre de voir ce qui se passe lorsque je mettrai enfin le site principal en ligne. Peut-être qu’à ce moment-là, le bouton « Afficher l’article complet » s’activera correctement.

Concernant Onebox, savez-vous s’il ne fonctionne que pour les sites en https ?

Il y a quelques exigences pour qu’un lien génère un onebox. Je ne suis pas certain que le HTTPS soit désormais obligatoire, mais cela ne me surprendrait pas. Les autres exigences sont que la page liée doit comporter une balise de description Open Graph définie, et que la page doit autoriser les requêtes provenant du serveur Discourse. Je soupçonne que vous rencontrez plusieurs problèmes avec votre site de préproduction qui empêchent la création de oneboxes.

1 « J'aime »

Bonjour Simon,

Cela a du sens. Je réessaierai le Oneboxing une fois le site principal mis en ligne.

Comme mentionné ci-dessus, l’espoir est que la mise en ligne du site et son retrait de l’environnement de staging aideront également la fonctionnalité de publication sur Discourse.

Merci encore pour votre aide et vos conseils.

Il semble que l’image brisée provenant du flux RSS ne puisse pas être corrigée manuellement.
Je vois l’image réapparaître dans l’aperçu sur le côté droit de l’éditeur. Mais après avoir appuyé sur enregistrer, l’image reste brisée dans le post.

Discourse ne générera pas de miniature si l’image n’est pas locale. Si je désactive disabled image download domains, tous les posts importés n’auront pas de miniature.

4 « J'aime »

Je rencontre le même problème. Je vois deux images dans l’aperçu, mais après l’enregistrement, cela ressemble à ceci :

Des solutions pour afficher les images également dans le message et pas seulement dans l’aperçu ?

Mise à jour : 2.7.0.beta7

2 « J'aime »

Vous devez modifier le message pour ajouter une ligne vide au-dessus des deux balises Markdown.

Si vous publiez les messages sur Discourse depuis un site web, vous devez ajouter le domaine à partir duquel les images sont servies à votre paramètre de site Discourse domaines de téléchargement d'images désactivés. Cela devrait empêcher le problème de se produire avec les nouveaux messages publiés sur Discourse.

Merci Simon. Malheureusement, je n’arrive pas à faire fonctionner :

Je peux vous envoyer l’URL publique, mais je ne suis pas sûr que cela soit considéré comme du spam. Je peux vous envoyer un message privé si vous le souhaitez.

Faites-moi savoir si vous avez besoin de plus d’informations.
(Actuellement 2.7.0.beta7, 890b06b10f)

Mise à jour : quelques éléments de contexte supplémentaires : Les publications ont été importées via un script d’importation provenant d’une exportation XML de forum Freshdesk. Le contenu réel contenait le HTML complet. Nous avons ensuite importé la sauvegarde de notre environnement de développement local vers notre nouvelle instance de production. Au départ, les images s’affichaient, mais comme il y avait la balise img originale pointant vers l’URL externe, Discourse a fini par télécharger l’image distante externe… mais ensuite, le message apparaissait cassé comme montré ci-dessus.

1 « J'aime »

Je ne comprends vraiment pas la complexité ici. Clairement, la balise HTML image est remplacée par du markdown — par exemple ![](upload://6zqK52dO23i1JsYH2oyMU12U2ro.jpeg). Pourquoi ne pas simplement ajouter deux retours chariot avant le ! ? Cela permettrait un rendu correct et garantirait le bon fonctionnement de la fonctionnalité d’upload d’images, évitant ainsi les images brisées et les problèmes de cross-site.

Existe-t-il une situation réelle, non théorique, où cet espace blanc pourrait causer un problème ? Ce problème serait-il pire que l’état actuel du plugin, où les images sont simplement brisées tout le temps ?

Notre plugin WordPress tente de contourner le problème en faisant exactement cela côté WordPress. Insérer deux retours chariot avant toute balise HTML img avant la publication du message sur Discourse résout le problème.

Je pense avoir suggéré d’ajouter quelque chose de similaire à notre analyseur Markdown ici : Markdown rendering issue with image surrounded with HTML. Je crois que la raison du rejet de cette approche est que nous ne souhaitons pas nous écarter de la spécification CommonMark.

D’accord, alors maintenant je suis encore plus confus ! Et je promets que c’est une vraie confusion, pas quelque chose que j’exagère pour plus d’effet. :slight_smile: Nous hébergeons Discourse et notre WordPress possède ce que je crois être la dernière version du plugin (2.3.0), mais nous avons toujours des images cassées et je dois aller ajouter manuellement les lignes vides. Y a-t-il quelque chose que je dois faire pour activer cela ?

Tout à fait. C’est un problème déroutant. Le plugin WP Discourse tente de résoudre le problème lié aux images, mais actuellement, il ne détecte les images que si les publications sont créées avec l’éditeur de blocs WordPress et que les images y sont ajoutées via le bloc Image par défaut. Si vous pouvez partager des détails sur la manière dont vous ajoutez des images aux publications de votre site WordPress, nous pourrons peut-être trouver une solution pour traiter ce problème.

Idéalement, cela sera corrigé côté Discourse, mais si cela n’est pas possible, l’analyse des images effectuée par le plugin WP Discourse devra être améliorée.

Hmmm, d’accord, donc Would you use this as your homepage? – Fedora Community Blog a renvoyé vers Would you use this as your homepage? - Fedora Discussion. (Les images sur le deuxième lien fonctionnent parce que j’ai édité le post directement.)

Lorsque je regarde dans l’interface d’administration de WordPress, toutes les images sont des blocs d’image.

Encore une fois, je ne comprends toujours pas la complexité ici. Quelque chose ajoute du markdown comme ![](upload://na9g3dGvhEU753JEnGrz8xER4XS.png) dans le texte brut de chaque publication sur le site Discourse. Pourquoi ne pas faire en sorte que cet élément ajoute une ligne vide avant chaque fragment de markdown ainsi inséré ?

Pourriez-vous essayer de poser cette question dans le sujet de bug connexe ici : Markdown rendering issue with image surrounded with HTML. Il est plus probable que cela attire plus d’attention si vous la postez dans le sujet de bug.

Édition : Je vais informer @angus du problème avec le plugin WP Discourse qui ne parse pas correctement les images, afin de résoudre le problème côté WordPress. Il aura probablement besoin de plus de détails de votre part pour diagnostiquer ce qui se passe.

1 « J'aime »