Interpolations-Schlüssel zur Anpassung von Text- und System-E-Mail-Vorlagen

:bookmark: Dieser Leitfaden bietet eine detaillierte Übersicht über Interpolations-Schlüssel, die zur Anpassung von Texten und System-E-Mail-Vorlagen in Discourse verwendet werden.

:person_raising_hand: Erforderliche Benutzerstufe: Administrator

Während Sie Texte in Discourse anpassen oder bestimmte E-Mail-Vorlagen anpassen, sind Ihnen möglicherweise Platzhalter-Variablen in einigen Vorlagen aufgefallen.

In Discourse nennen wir diese Interpolations-Schlüssel.

Verständnis von Interpolations-Schlüsseln

Interpolations-Schlüssel sind Platzhalter, die in bestimmten Discourse-Vorlagen verfügbar sind. Sie ermöglichen es Ihnen, dynamische Inhalte in Ihre Texte und E-Mail-Vorlagen einzufügen.

Beispiel für Interpolations-Schlüssel in der E-Mail-Vorlage „Konto erstellt":

Diese Schlüssel, wie z. B. %{username} oder %{site_name}, werden beim Versenden der E-Mail durch tatsächliche Daten ersetzt.

Im Allgemeinen können diese Platzhalter innerhalb der Vorlage, zu der sie gehören, verschoben werden, sind jedoch nur in dieser Vorlage verfügbar und können nicht in andere Vorlagen verschoben werden, da sie alle durch Servercode gestützt werden, der an die jeweilige Vorlage gebunden ist.

Bestimmte Vorlagengruppen erlauben jedoch das Hinzufügen zusätzlicher Interpolations-Schlüssel über diejenigen hinaus, die bereits in der Standardvorlage enthalten sind.

Zusätzliche Interpolations-Schlüssel

Willkommensnachricht des Systems

Für die Vorlage system_messages.welcome_user können Sie diese zusätzlichen Schlüssel hinzufügen:

  • username: Der Benutzername des Nutzers
  • name: Der vollständige Name des Nutzers
  • name_or_username: Entweder der vollständige Name oder der Benutzername des Nutzers

Diese Werte werden zur Laufzeit von der Klasse SystemMessage bereitgestellt (siehe system_message.rb für den entsprechenden Discourse-Code).

E-Mails für Benachrichtigungen an Benutzer

Für user_notifications und verwandte E-Mail-Vorlagen (einschließlich unsubscribe_mailing_list und unsubscribe_link) sind viele zusätzliche Schlüssel verfügbar, darunter topic_title, username, site_name, url, unsubscribe_url und andere.

Für die vollständige und aktuelle Liste aller zulässigen benutzerdefinierten Interpolations-Schlüssel und der Vorlagengruppen, auf die sie angewendet werden, konsultieren Sie ALLOWED_CUSTOM_INTERPOLATION_KEYS im Quellcode von Discourse für translation_override.rb.

9 „Gefällt mir“

Das ist nicht korrekt. Derzeit funktioniert das nur für system_messages.welcome_user, aber wir könnten es auf alle anderen Schlüssel erweitern. Dies ist #pr-welcome-Material.

4 „Gefällt mir“

Danke für den Hinweis, dies wurde im Leitfaden aktualisiert.

2 „Gefällt mir“

Hallo!

Wie kann ich den Wert für einige dieser Interpolationsschlüssel ändern? Zum Beispiel %{search_answer}

Danke!

Hallo!
Es wird angezeigt, dass dieser Schlüssel nicht gültig ist:

P.S.
Ich ersetze im Text, nicht in der E-Mail (macht das einen Unterschied)? Danke!

Ich glaube nicht, dass diese global und überall kostenlos nutzbar sind.

1 „Gefällt mir“

Danke @Jagster! Ich verwende sie in der Textanpassung. Funktioniert es also gemäß dem Beitrag im Thema?

Das Thema handelt eigentlich von E-Mail-Vorlagen und diesen Texten. Daher können Sie Interpolationsschlüssel nicht außerhalb des richtigen Kontexts verwenden. Deshalb haben wir andere Schlüssel für E-Mails, andere für einige KI-Eingabeaufforderungen usw.

Sicher, Plugins können viele Dinge tun, aber diesmal nicht sofort.

Und Haftungsausschluss: Ich bin nur ein weiterer Endbenutzer und ich kann auch furchtbar falsch liegen. Aber ich bin mir ziemlich sicher, dass ich Recht habe – und deshalb funktioniert Ihr Versuch nicht :man_shrugging:

Okay, vielen Dank für Ihre Unterstützung. Es scheint, dass es selbst in einer E-Mail-Vorlage nicht funktioniert:

Meine Vermutung ist, dass Sie %{username} in Vorlagen vom Typ „User did…“ verwenden können und alle anderen Vorlagen dies nicht unterstützen.

Aber wir werden morgen sehen, wenn alle Gurus aufgewacht sind.