Aperçu de la liste des sujets (legacy)

À quoi ressemble la section plugin de votre app.yml ? Utilisez-vous le bon plugin ou avez-vous doublé le TC et le plugin ? Assurez-vous d’utiliser la branche exacte pour le sidecar.

1 « J'aime »

J’ai réussi à faire fonctionner le plugin en local. Je pense que le problème venait—comme vous l’avez mentionné—du fait que j’avais commencé avec le composant de thème, puis j’avais ajouté le plugin séparément. J’avais supprimé le composant de thème, mais je n’avais pas redémarré mon serveur après cette suppression ; il semble donc que le TC et le plugin se superposaient. Maintenant, avec uniquement le plugin, tout fonctionne sans erreur.

Ainsi, lorsque j’édite les métadonnées d’un sujet, je vois le bouton « Sélectionner une vignette ». Il semble que les images n’apparaissent dans cette fenêtre modale de sélection que si elles ont été ajoutées localement. Si j’ajoute une image depuis le web à un sujet, cette image n’apparaîtra pas dans la fenêtre modale pour la sélection. Est-ce exact ?

Je comprends pourquoi cela pourrait être le cas, mais le problème est que si les vignettes de prévisualisation exigent que les images aient été ajoutées localement, cela signifie qu’elles doivent être stockées sur mon serveur. Avec une nouvelle image potentielle pour chaque sujet, cela pourrait devenir coûteux. J’espérais qu’il existait un moyen de permettre aux utilisateurs d’ajouter des liens, et que ces images liées au web serviraient de vignettes pour les aperçus des sujets.

Y a-t-il une solution pour contourner cela ? Ou une façon d’afficher des vignettes de prévisualisation dans la liste des sujets sans avoir à héberger ces images sur mon serveur ?

3 « J'aime »

Il n’y a pas d’autre solution. C’est un comportement naturel du discours. Toutes les images doivent être téléchargées. Vous pouvez configurer l’utilisation d’un emplacement de téléchargement externe, mais elles doivent tout de même être téléchargées et ne peuvent pas être hébergées à distance par rapport à votre infrastructure.

1 « J'aime »

Merci. Cela a du sens. Il semble que, pour qu’une image puisse devenir une vignette d’aperçu de sujet, elle doive en réalité apparaître dans le sujet. Est-ce exact ?

Je peux imaginer que les utilisateurs souhaitent avoir une vignette spécifique pour leur sujet, sans qu’elle apparaisse dans le texte de celui-ci.

Cela n’est pas pris en charge

C’est noté. C’est un plugin extrêmement utile. Il m’a fait gagner beaucoup de temps !

2 « J'aime »

J’ai remarqué deux bugs dans ce plugin.

  1. Si un sujet ne contient aucune image TÉLÉCHARGÉE sur mon forum Discourse lui-même, mais que j’ai des images liées (c’est-à-dire des images dont le SRC provient d’autres sites ou de CDN), alors cette image n’est pas détectée par ce plugin et elle n’apparaît pas dans le flux des sujets. Seules les images téléchargées directement sur mon forum s’affichent dans le flux. Le plugin devrait également détecter la première image liée du premier message comme image du sujet et l’afficher dans le flux. Mon forum est important, mais je n’ai pas de stockage pour les images ; je stocke donc les images des utilisateurs sur des hébergeurs externes via des CDN et j’utilise un lien vers ces CDN pour afficher et prévisualiser les images sur mon forum.

  2. Pour résoudre le problème ci-dessus, j’ai également essayé d’utiliser un service d’images aléatoires, par exemple https://picsum.photos/ ou https://source.unsplash.com/random. Chaque fois que quelqu’un accède à ces URL, une image aléatoire est générée. J’ai défini cette URL comme image par défaut, mais ce plugin affiche toujours la même image à plusieurs reprises au lieu d’afficher une image unique différente pour chaque sujet.

Voici à quoi cela ressemble : on voit la photo de la fille en yoga car un utilisateur l’a téléchargée sur notre site, mais tous les autres sujets contiennent également des IMAGES LIÉES via des CDN, qui ne sont pas prévisualisées. À la place, la même image est affichée pour tous, provenant soit de https://source.unsplash.com/random, soit de https://picsum.photos/200.

Même Discourse lui-même héberge ses images sur des CDN externes, par exemple : https://d11a6trkgmumsb.cloudfront.net/original/3X/6/4/64dff560b7c63a2c11c20374ec3427e2ac558437.png

Ce plugin doit donc prendre en charge la lecture et la détection des images distantes des sujets, qui sont hébergées sur des sites externes via des CDN mais qui se trouvent dans le premier message et constituent la première image d’un sujet.

De plus, lorsque je partage des sujets sur les réseaux sociaux, les balises Open Graph ne détectent pas non plus l’image. Aucune image n’apparaît, seule l’icône du site est affichée, même si le sujet contient une vraie image pertinente, qui n’est cependant qu’une image liée distante.

Comment puis-je résoudre ces problèmes ? Existe-t-il un moyen d’ajouter un nombre aléatoire à l’URL pour que chaque requête génère une URL unique, permettant ainsi d’afficher toujours une image différente pour chaque sujet ?
Mon problème pourrait être facilement résolu si vous activiez la fonctionnalité de détection automatique des images liées (images dont le SRC provient de CDN externes) dans le premier message, afin de les utiliser comme image du sujet et de les afficher sur la page d’accueil.

Quelqu’un peut-il m’aider ?

1 « J'aime »

Que voulez-vous dire par là ? Hébergez-vous toutes vos images sur un seul fournisseur S3 et y accédez-vous via le CDN spécifié ?

Utilisez-vous un service répertorié ici ? Configure an S3 compatible object storage provider for uploads

Sinon, votre question sort quelque peu du cadre de ce plugin. Topic List Previews exploite simplement l’architecture de base de Discourse pour afficher les miniatures. Les images utilisées pour créer ces miniatures doivent être téléchargées localement ou sur le stockage externe alloué spécifié dans les paramètres du site. Les autres sources ne sont pas prises en charge. Le processus de création des miniatures est un processus de base de Discourse et il n’agit que sur ces sources.

L’image de repli par défaut peut bien sûr être n’importe où sur un site public, mais c’est la seule exception.

La balise og publique des sujets doit refléter la miniature sélectionnée. Il ne s’agit pas d’une fonctionnalité du plugin, mais également d’une fonctionnalité de base de Discourse.

1 « J'aime »

Salut Robert,

Un grand merci pour ta réponse rapide.

Oui, c’est bien. Les images doivent être détectées par le cœur de Discourse, tout comme le fait ton plugin, même si elles sont hébergées sur des sites publics externes. C’est exactement ce que je souhaite que le cœur de Discourse prenne en charge. Où puis-je demander cette fonctionnalité ?

En gros, toutes les images de mes sujets sont chargées depuis d’autres sites publics externes comme Imgur, https://pixabay.com/ et d’autres sites gratuits qui permettent d’utiliser des images gratuitement. Je n’utilise aucun stockage objet.

Je ne télécharge donc jamais les images sur mon propre serveur Discourse, afin d’économiser mes coûts de stockage.

J’utilise des sites d’hébergement d’images gratuits tiers pour afficher mes images. Laissez-moi vous expliquer.

Vous pouvez voir par exemple sur ce sujet : How Many Carbs on Keto? - How To Discuss

Par exemple,

cette première image est en réalité chargée depuis Imgur. Vous pouvez voir sa source.

Son URL d’image réelle est Imgur: The magic of the Internet

De même, sur ce sujet : How to do Handstand yoga? - How To Discuss

l’image est en réalité hébergée à cette URL. Vous pouvez voir sa source dans mon sujet :

Donc, dans tous ces cas, je rencontre deux problèmes :

  1. Ces images externes ne sont pas détectées et affichées comme miniatures de sujet dans le plugin d’aperçu des sujets, comme vous pouvez le voir sur ma page d’accueil actuelle : https://howtodiscuss.com/. Même si tous mes sujets ont des images, elles ne sont pas détectées.

  2. De plus, chaque fois que je partage mes sujets sur des sites de réseaux sociaux comme Facebook, Twitter, LinkedIn ou Skype, ou ailleurs, la balise meta OG ne prend pas en compte mon src d’image externe et retombe donc systématiquement sur mon logo de site dans le lien de partage du sujet, au lieu d’afficher l’image réelle du sujet qui devrait apparaître dans l’aperçu social.

Par exemple, regardez ici sur une publication Facebook : vous pouvez voir que le sujet a bien une image de sujet, mais il affiche toujours mon logo de site comme valeur par défaut :frowning:

Vous pouvez tester mes URLs ici pour voir le problème : Social Share Preview of howtodiscuss.com - Social Share Preview – Check social media link previews

Les sujets ont bien leurs images sur des sites publics externes, mais cela retombe toujours sur mon logo de site. Je ne veux pas ce comportement.

Un autre ami utilise Discourse et le plugin d’aperçu de liste de sujets rencontre les mêmes problèmes @Bcat.

Comment puis-je résoudre cela ? Peut-être que je peux ajouter une balise meta OG forcée dans le HTML de mes sujets avec le src de l’image distante du CDN externe ? Comment faire cela ? Pour que les sites de réseaux sociaux et ce plugin d’aperçu de liste de sujets puissent détecter et afficher les images de mes sujets sur ma page d’accueil.

Pouvez-vous me dire comment je peux modifier ou remplacer la balise OG publique de chaque sujet pour qu’elle prenne ces images publiques comme miniatures de sujet ?

1 « J'aime »

Pour générer des vignettes, vous devez utiliser des uploads locaux ou la fonctionnalité d’intégration S3 native de Discourse. Aucune autre source n’est prise en charge (sauf l’image de repli, qui est très superficielle et n’affectera pas votre balise og).

Vous pouvez en discuter avec l’équipe Discourse ici ou lancer un sujet #feature.

2 « J'aime »

@merefield C’est l’heure de la mise à jour ! :tada: Y a-t-il des problèmes connus ?

2 « J'aime »

Aucun problème de mon côté, Bart. Comment avance la construction du serveur de préproduction ? :wink:

2 « J'aime »

Après la dernière mise à jour, nous avons obtenu une page d’index vide. Il y a un problème avec les aperçus des sujets de la liste des plugins non officiels. Nous l’avons donc désactivé et tout va bien. Quelqu’un a-t-il le même problème ou une solution ? Merci.

2 « J'aime »

Merci pour le rapport. J’ai corrigé le plugin Locations avec un problème similaire hier. Je vais jeter un coup d’œil.

1 « J'aime »

Pourriez-vous s’il vous plaît reconstruire et confirmer la correction ?

https://github.com/paviliondev/discourse-topic-previews/commit/2e927e0714c10bcacb075fdd719347f5b50bc21e

2 « J'aime »

Pour information, afin d’éviter toute confusion, j’ai également appliqué ce correctif au TC : COMPATIBILITY: removed deprecated routes · merefield/discourse-tc-topic-list-previews@b8f1a78 · GitHub

3 « J'aime »

Pour information à tous ceux qui s’apprêtent à mettre à niveau et utilisent le TC avec le plugin d’assistance, assurez-vous de mettre à jour le TC avant la mise à niveau. Lorsque j’ai mis à jour le noyau/les plugins, j’ai été confronté à un écran blanc et à cette erreur

J’ai pu accéder en mode sans échec, mettre à jour le TC et tout est maintenant en ordre !

2 « J'aime »

Oui, bon conseil, merci David.

3 « J'aime »

Salut Rob, j’ai remarqué que des vignettes apparaissent dans la catégorie « Staff », même si cette catégorie n’est pas incluse dans le paramètre « topic list tiles categories ». Je constate ce problème sur tous mes sites, quelle que soit leur configuration. S’agit-il d’une limitation ou d’un bug ?

2 « J'aime »

Impossible de reproduire le problème. Avez-vous effectué une mise à jour depuis le 5 ?

2 « J'aime »