Quell-URL für meta og:image überschreiben, um extern geladene Bilder auf Themen zu verwenden?

Grundsätzlich können Sie mein Problem und die Diskussion mit dem Plugin-Autor @merefield hier sehen:

Er empfiehlt mir, das Discourse-Team zu bitten, dies für uns zu übernehmen.

Ich verwende auf meiner Website immer Bilder von externen CDNs. Ich lade sie niemals lokal hoch oder speichere sie in einem Object Storage, da dies zu teuer ist, um Bilder lokal oder in S3-Buckets zu speichern.

Derzeit sehe ich, dass mein Meta-og:image-Tag diese Bilder nicht erkennt. Sehen Sie sich zum Beispiel mein Thema hier an: How Many Carbs on Keto? - How To Discuss

Das Bild wird tatsächlich von einer externen öffentlichen URL als IMG-SRC geladen. Die Social-Media-Open-Graph-Darstellung zeigt jedoch immer mein Site-Logo als Fallback-Bild an, was nicht gut ist.

Aufgrund dieses Kernverhaltens von Discourse werden diese Vorschaubilder auch vom Topic-List-Preview-Plugin nicht erkannt.

Wie kann ich das Meta-og:image-Tag überschreiben, um die Verwendung meines extern hochgeladenen Bildes zu erzwingen?

Dann könnte ich beim Teilen auf Social-Media-Seiten das TATSÄCHLICHE THEMENBILD anstelle meines Forum-Logos sehen: https://developers.facebook.com/tools/debug/?q=https%3A%2F%2Fhowtodiscuss.com%2Ft%2Fis-yoga-a-good-workout%2F28043

Ich habe versucht, diese Zeile auf meiner Themen-Seite hinzuzufügen:

<meta property="og:image" content="https://images.pexels.com/photos/4761347/pexels-photo-4761347.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500" />

Aber das og:image-Tag zeigt in der Quelltextansicht der Seite immer noch mein Site-Logo als Fallback an. Es scheint, als ob es denkt, dass es in diesem Thema kein Bild gibt :frowning:

Das erste Bild im ersten Beitrag eines Themas muss von meinem Meta-og:image-Tag erkannt werden, auch wenn das Bild auf einer öffentlichen URL gehostet ist. Derzeit wird es nur erkannt, wenn das Bild auf meinem eigenen Server hochgeladen wurde. Viele von uns können sich jedoch kein eigenes Image-Hosting leisten, da dies zu teuer ist. Eine Unterstützung des Discourse-Teams, um diese Änderung für uns zu ermöglichen, wäre sehr hilfreich.

@Bcat hat das gleiche Problem auf seinem Forum.

2 „Gefällt mir“

Discourse Core unterstützt nur ‘Uploads’ als Vorschaubilder für Themen. Diese können lokal sein oder auf S3 gehostet werden, müssen aber auf Discourse hochgeladen werden. Sie können automatisch direkt verlinkte Bilder in Uploads umwandeln, indem Sie die Website-Einstellung „Bilder von externen Quellen auf lokalen Server herunterladen

3 „Gefällt mir“

Wenn sie auf S3 gehostet sind, wie werden sie dann auf Discourse hochgeladen? S3 befindet sich nicht auf Discourse; es ist ebenfalls ein öffentlicher Server zum Hosting von Bildern. Wenn ich Remote-Bilder von kostenlosen öffentlichen CDNs Dritter verwende, sind diese ebenfalls für jedermann zugänglich, genau wie bei S3. Warum erlaubt bzw. unterstützt Discourse dann nicht die Verwendung öffentlicher Bild-URLs als Themen-Miniaturansichten?

Zum Beispiel ist diese URL https://d11a6trkgmumsb.cloudfront.net/optimized/3X/7/1/71abcfa01874c32497d638b372f94c7b9fc021e4_2_1380x718.png das Bild, das ich gerade eben auf Meta-Discourse hochgeladen habe. Dies ist eine öffentliche Bild-Hosting-URL, und meine eigenen Bild-URLs sehen so aus: https://images.pexels.com/photos/4761347/pexels-photo-4761347.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500.

Auch meine URLs sind öffentlich gehostete Bilder. Warum erkennt Discourse meine nicht? Bitte konfigurieren Sie es so, dass beide verwendet werden, da sowohl als Crawler als auch als Open-Graph-Crawler beide Bildquellen öffentlich gehostete URLs sind.

Ich habe diese Einstellung bereits aktiviert,

aber warum werden meine verlinkten Bilder dann nicht als Themen-Miniaturansichten übernommen?

Ich habe in dieser Dateieinstellung auch JPG/JPEG-Uploads deaktiviert,

Ich habe dies deaktiviert, um zu vermeiden, dass Benutzer Bilder direkt auf meinen Server hochladen, um Speicherplatz zu sparen.

Sollte mein Forum sehr groß werden, wird es für mich sehr schwierig, den Speicher für so viele Bilder zu verwalten.

Gibt es einen Trick oder eine „Hack“-Methode, um zu erreichen, was ich möchte? Ich möchte einfach das Meta-Tag og:image überschreiben, damit es mein verlinktes Bild im Thema verwendet. Wie kann ich dies einfach erreichen? Vielleicht gibt es einen HTML-Code, den ich auf den Themen-Seiten einfügen kann, um zu erzwingen, dass diese verlinkte Bildquelle für og:image verwendet wird?

Oder kann ich eine Codezeile in meinem hinzufügen, um das Standardverhalten zu verhindern oder einfach die Meta-og:image-Zeile zu entfernen, die auf das Logo-Bild zurückfällt, falls Discourse keine Themen-Miniaturansicht erkennt?

Ich habe versucht, die folgende Zeile im Editor eines Beitrags auf der Themen-Seite hinzuzufügen:

<meta property="og:image" content="https://images.pexels.com/photos/4761347/pexels-photo-4761347.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500" />

Aus irgendeinem Grund wird dieser Code jedoch nicht gerendert, wenn ich den Quellcode meiner Themen-Seite ansehe. Warum ist das so?

Dies ist die Seite, auf der ich dies ausprobiert habe: Is yoga a Good workout - How To Discuss

Wie kann ich dies priorisieren, sodass, wenn meine Seite zwei Meta-og:image-Tags hat, nur MEIN BENUTZERDEFINIERTES Meta-og:image-Tag ausgewählt und verwendet wird?

Indem man es so einrichtet:

Weil Discourse keine Berechtigung hat, auf den S3-Bucket zuzugreifen und die Bilder für die Anzeige auf der Website zu optimieren. Discourse kann zudem nicht garantieren, dass der Link immer funktioniert – der Eigentümer des Buckets könnte die Datei löschen.

Meinst du, dass mein Discourse keine Berechtigung hat, auf den S3-Bucket von anderen kostenlosen Drittanbieter-CDN-Bilderdiensten zuzugreifen?
Wenn ich ein Bild im Browser aufrufen kann, kann Discourse das auch. Discourse optimiert bereits die Bilder, die ich per Hotlink teile. Ich denke also, dass wir dieses Feature definitiv benötigen.

Ich habe meine Antwort oben für den Discourse-CDN-Vergleich aktualisiert, bitte schau nach.

Welche andere günstigste Möglichkeit schlägst du vor, um meine Bilder in großer Menge zu hosten? Denn ich befürchte, dass, wenn meine Website Millionen von Themen hat, das Milliarden von Bildern bedeutet, und mein Discourse-Backup immer größer wird, was sehr schwer und teuer zu verwalten, skalieren und migrieren ist. Was würde ich in diesem Fall dann tun?

Es hat keine Berechtigung, diese Dateien zu verwalten oder zu optimieren.

Wenn du diese Funktion wirklich benötigst, wäre die beste Option, im Marketplace zu posten und einen Plugin-Entwickler zu finden, der dir beim Erstellen der Funktion helfen kann.

Danke, ich habe ein BEZAHLTES Thema für dieselbe Funktion im Core oder über ein Plugin eröffnet,

Dieses Thema wurde automatisch nach 5 Stunden geschlossen. Neue Antworten sind nicht mehr erlaubt.