Erstellen einer Theme-Übersetzung für Custom Header Links

Hallo, Freund! Ich möchte eine Theme-Übersetzung für diese Komponente erstellen. Ich habe den Artikel zur Mehrsprachigkeit unter Add settings to your Discourse theme gelesen und dabei dieses Theme gefunden: GitHub - discourse/DiscoTOC: A Discourse theme component that generates a table of contents for topics with one click · GitHub, das Übersetzungsfunktionen für Themes bietet.

Ich weiß jedoch nicht, wie ich mit der Erstellung von Übersetzungen für diese Theme-Komponente beginnen soll. Könntest du mir eine Anleitung geben?

1 „Gefällt mir“

Ich versuche, dies zu ändern, indem ich David Taylors Thema verwende:

 I18n.t(themePrefix("my_translation_key"))

in Add localizable strings to themes and theme components

<script type="text/discourse-plugin" version="0.8.20">
  // Füge ein Attribut zum <html>-Tag hinzu. Dies könnte dem Benutzer helfen,
  // seine Header-Links zu stylen
  $('html').attr('dhp-locale', I18n.locale)

  const customHeaderLinks = I18n.t(themePrefix("header_nav_link"));
  if (!customHeaderLinks.length) return;

  const h = require("virtual-dom").h;
  const headerLinks = [];

  const mobileView = api.container.lookup("site:main").mobileView;

und füge eine locales/en.yml hinzu

aber erhalte das Ergebnis [en.theme_translations.87.header_nav_link]


…also mache ich etwas falsch?

1 „Gefällt mir“

Nein, du machst nichts falsch. Diese Komponente unterstützt Theme-Übersetzungen noch nicht, aber ihre Aktualisierung steht auf meiner Liste.

Versuchst du, den Text für jeden Link so zu übersetzen, dass er je nach Sprachpräferenz des Benutzers angezeigt wird?

3 „Gefällt mir“

Ja, Johani, ich verwende diese Komponente als Menü. Wie du gesagt hast, möchte ich den Text für jeden Link übersetzen. Es steht auf deiner Liste, ich bin sehr froh, dass du das machen kannst. :smiling_face_with_three_hearts: :smiling_face_with_three_hearts: :smiling_face_with_three_hearts:

1 „Gefällt mir“

haha, ich habe eine Idee:
Ich kann diese Komponente nutzen, um eine zweisprachige Website zu realisieren.
Ich erstelle einige chinesische Kategorien und einige englische Kategorien
und verwende diese Komponente als Hauptnavigation.
Die Titel-Links sind in den Übersetzungsdateien en.yml und zh_CN.yml enthalten.

Für die Startseite und die Kategorien-Seiten kann ich eine übersetzte Theme-Komponente verwenden (auch wenn es sich um eine statische Seite handelt).

Ich blende das Standard-Kategorie-Dropdown aus.
Und meiner Einschätzung nach reicht es für uns völlig aus, nur zwei Sprachen auf unserer Website zu verwenden.

1 „Gefällt mir“

haha, ich habe es verstanden, verschiebe einfach den Inhalt von header.html nach head_tag.html

Hol es dir, indem du diesen Beitrag noch einmal liest:

https://meta.discourse.org/t/how-to-add-settings-to-your-discourse-theme/82557/14?u=aksoforever

Danke an Johani und diesen Joe-Typen. :blush: :blush: :blush: :blush:

3 „Gefällt mir“