Diskurs mehrsprachiger Beitrag

discourse-multilingual-post

Ein Discourse-Plugin, das mehrere lokalisierte Versionen von Beitragsinhalten ermöglicht.

Dieses Plugin ist ein Proof-of-Concept: Ohne die Möglichkeit, Thementitel zu lokalisieren, ist es nicht sehr nützlich.

Wie man es verwendet

Verwenden Sie in einem Beitrag [lang=xx]-Blöcke:

[lang=en]
Hello World!
[/lang]
[lang=fr]
Bonjour monde !
[/lang]
[lang=de]
Hallo Welt !
[/lang]

Ergebnis:

Hallo Welt !

Ländercodes müssen aus zwei Buchstaben bestehen (Regionen werden nicht unterstützt).

Funktionsweise

Beim Rendern eines Beitrags sucht das Plugin nach einem [lang=xx]-Block zur Anzeige. Die Suche wird beendet, sobald einer der folgenden Fälle eintritt:

  1. Der Block für die Sprache des Benutzers (wie von Discourse ausgewählt)
  2. Der Block für die Standardsprache der Discourse-Instanz
  3. Der erste Block

Repository

https://github.com/sylque/discourse-multilingual-post

13 „Gefällt mir“

Discourse-Team, habt ihr eine Idee, wie ich Titel von Themen lokalisieren könnte?

Das möchte ich erreichen:

  • Eine Sprachreihenfolge definieren, z. B. „en,fr,de"
  • Benutzern erlauben, Titel so zu schreiben: Hello World#Bonjour monde#Hallo Welt
  • Wenn Discourse einen Titel anzeigt, diesen so anpassen, dass nur die richtige Sprache erhalten bleibt

Ich habe jedoch keinen clientseitigen Hook gefunden, um den Titel zu ändern. Habt ihr eine Idee?

6 „Gefällt mir“

Haben Sie bereits über die Behandlung von Titeln in Rails nachgedacht? Die Standardsprache ist die bestehende, während zusätzliche Titel benutzerdefinierte Themenfelder sind. Anschließend passen Sie die Serialisierer so an, dass sie den Titel der ausgewählten Sprache im Payload senden.

8 „Gefällt mir“

Große Arbeit!

Ich würde dem zustimmen. Ich denke, serverseitig ist der richtige Weg für Titel.

Ich bin gerade dabei, ein mehrsprachiges Plugin zu entwickeln (fast fertig), das Übersetzungen für Folgendes ermöglicht:

  1. Tags
  2. Kategoriennamen
  3. Kategorienbeschreibungen

Sowie ein Admin-Panel zur Verwaltung von Sprachen und Locales sowie eine Reihe weiterer Funktionen wie sprachspezifische Inhaltsfilter für Benutzer.

Es könnte Spielraum geben, hier die Kräfte zu bündeln.

14 „Gefällt mir“

Hallo! Ich liebe dieses Plugin und wie einfach es ist. Ich finde, es wäre noch nützlicher, wenn es die Dekoration von Diskurs-Seiten unterstützen würde (FAQ/Richtlinien, AGB, Datenschutz), da die Überschriften ohnehin übersetzt werden. Ich habe versucht, es selbst zu forkieren und zu erweitern, aber um ehrlich zu sein, bin ich ein absoluter Anfänger. Ich habe zwar das Gefühl, dass es umgeschrieben werden muss, um decorateWidget() anstelle von decorateCooked() zu verwenden.

1 „Gefällt mir“

Das Dekorieren einer statischen Discourse-Seite (FAQ/Richtlinien, AGB, Datenschutz) wäre eine schöne Funktion. Ich bin mir jedoch nicht sicher, ob decorateWidget einen Hook für statische Seiten hat. Hat jemand einen Hinweis dazu?