Skip to content

Braze-LernkursLiquid verwenden

Dieser Artikel zeigt Ihnen, wie Sie verschiedene Nutzerattribute verwenden können, um persönliche Informationen dynamisch in Ihr Messaging einzufügen.

Liquid ist eine Open-Source-Template-Sprache, die von Shopify entwickelt und in Ruby geschrieben wurde. Sie können sie in Braze nutzen, um Nutzerprofildaten in Ihre Nachrichten einzubinden und diese Daten anzupassen. Beispielsweise können Sie Liquid-Tags verwenden, um bedingte Nachrichten zu erstellen, etwa um verschiedene Angebote basierend auf dem Abo-Jubiläumsdatum einer Nutzerin oder eines Nutzers zu versenden. Darüber hinaus können Filter Daten manipulieren, z. B. das Registrierungsdatum einer Nutzerin oder eines Nutzers von einem Zeitstempel in ein besser lesbares Format umwandeln, wie „15. Januar 2022“. Weitere Details zur Liquid-Syntax und ihren Möglichkeiten finden Sie unter Unterstützte Personalisierungs-Tags.

Funktionsweise

Liquid-Tags fungieren als Platzhalter in Ihren Nachrichten, die genehmigte Informationen aus dem Konto Ihrer Nutzer:innen abrufen und Personalisierung sowie relevante Messaging-Praktiken ermöglichen können.

Im folgenden Block sehen Sie eine doppelte Verwendung eines Liquid-Tags, um den Vornamen der Nutzer:innen abzurufen, sowie einen Standard-Tag für den Fall, dass ein:e Nutzer:in keinen Vornamen hinterlegt hat.

1
Hi {{ ${first_name} | default: 'Valued User' }}, thanks for using the App!

Für eine Nutzerin namens Janet Doe würde die Nachricht folgendermaßen erscheinen:

1
Hi Janet, thanks for using the App!

Oder…

1
Hi Valued User, thanks for using the App!

Unterstützte Werte zum Einsetzen

Die folgenden Werte können je nach Verfügbarkeit in eine Nachricht eingesetzt werden:

Sie können Inhalte auch direkt von einem Webserver über Braze Connected Content abrufen.

Liquid verwenden

Mit Liquid-Tags können Sie die Qualität Ihrer Nachrichten steigern, indem Sie ihnen eine persönliche Note verleihen.

Liquid-Syntax

Liquid folgt einer bestimmten Struktur bzw. Syntax, die Sie beim Erstellen dynamischer Personalisierung beachten müssen. Hier sind einige grundlegende Regeln, die Sie im Hinterkopf behalten sollten:

  • Verwenden Sie gerade Anführungszeichen in Braze: Es gibt einen Unterschied zwischen typografischen Anführungszeichen (’ ‘) und geraden Anführungszeichen (' '). Verwenden Sie gerade Anführungszeichen (' ') in Ihrem Liquid in Braze. Beim Kopieren und Einfügen aus bestimmten Texteditoren können typografische Anführungszeichen erscheinen, die Probleme in Ihrem Liquid verursachen können. Wenn Sie Anführungszeichen direkt im Braze-Dashboard eingeben, sind Sie auf der sicheren Seite.
  • Klammern kommen paarweise vor: Jede Klammer muss sowohl geöffnet als auch geschlossen werden { }. Achten Sie darauf, geschweifte Klammern zu verwenden.
  • If-Anweisungen kommen paarweise vor: Für jedes if benötigen Sie ein endif, um anzuzeigen, dass die if-Anweisung beendet ist.
  • Case-Anweisungen kommen paarweise vor: Für jedes case benötigen Sie ein endcase, um den Block zu schließen.
  • Variablennamen müssen ASCII-Zeichen verwenden: Liquid-Variablennamen (erstellt mit assign oder capture) unterstützen nur ASCII-Buchstaben, Ziffern und Unterstriche. Braze-Personalisierungsattributnamen (innerhalb von custom_attribute.${...} oder event_properties.${...}) können Nicht-ASCII-Zeichen enthalten.
  • Braze-Liquid-Variablen in mehrzeiligen assign-Tags mit doppelten geschweiften Klammern umschließen: Verwenden Sie doppelte geschweifte Klammern ({{ }}) um Braze-Liquid-Variablen, wenn ein assign über mehrere Zeilen geht.

Mehrzeilige assign-Tags

Sie können ein assign über mehrere Zeilen aufteilen (zum Beispiel, indem Sie Filter mit | vor dem schließenden Tag fortsetzen), solange Sie alle Braze-Liquid-Variablen mit doppelten geschweiften Klammern ({{ }}) umschließen. Ohne diese Klammern können mehrzeilige Assign-Anweisungen zu unerwartetem Rendering führen, einschließlich angepasster Attribute, die nicht korrekt als Template eingefügt werden. Das folgende Beispiel zeigt ein funktionierendes mehrzeiliges Assign:

1
2
3
4
{%- assign color = {{custom_attribute.${favorite_color}}}
| default: {{custom_attribute.${fav_color}}}
| default: 'blue'
%}

Sie können das vollständige assign auch in einer Zeile schreiben:

1
{%- assign color = custom_attribute.${favorite_color} | default: custom_attribute.${fav_color} | default: 'blue' %}

Wo Operatoren und Filter verwendet werden können

Operatoren (wie ==, !=, >, and, or) und Filter (wie | size, | plus) können jeweils nur in bestimmten Liquid-Kontexten verwendet werden.

Kontext Operatoren Filter
assign Nicht unterstützt Unterstützt
if, elsif, unless Unterstützt Nicht unterstützt
case, when Nur Gleichheitsvergleich1 Nicht unterstützt
for Nicht unterstützt Nicht unterstützt
Array-Zugriff ([ ]) Nicht unterstützt Nicht unterstützt

Wenn Sie einen gefilterten Wert in einem Kontext benötigen, der keine Filter unterstützt, weisen Sie das Ergebnis zuerst einer Variablen zu.

Ein Filterergebnis in einer Bedingung verwenden

Sie können einen Filter nicht direkt in einer bedingten Anweisung verwenden. Dies ist falsch:

1
2
3
{% if my_array | size > 3 %}
You have more than 3 items!
{% endif %}

Weisen Sie stattdessen das Filterergebnis einer Variablen zu:

1
2
3
4
{% assign array_size = my_array | size %}
{% if array_size > 3 %}
You have more than 3 items!
{% endif %}
Ein Filterergebnis in einer For-Schleife verwenden

Sie können keinen Filter auf das Iterable in einer for-Schleife anwenden. Dies ist falsch:

1
2
3
{% for item in my_array | reverse %}
{{ item }}
{% endfor %}

Weisen Sie stattdessen den gefilterten Wert einer Variablen zu:

1
2
3
4
{% assign reversed = my_array | reverse %}
{% for item in reversed %}
{{ item }}
{% endfor %}
Ein Filterergebnis für den Array-Zugriff verwenden

Sie können keinen Filter innerhalb eckiger Klammern verwenden. Dies ist falsch:

1
{{ my_array[my_var | minus: 1] }}

Weisen Sie stattdessen zuerst den gefilterten Wert zu:

1
2
{% assign adjusted_index = my_var | minus: 1 %}
{{ my_array[adjusted_index] }}
Ein Vergleichsergebnis in einer Variablen speichern

Sie können keinen Operator in einer assign-Anweisung verwenden. Dies ist falsch:

1
2
3
4
{% assign is_vip = total_spend > 100 %}
{% if is_vip %}
Welcome to the VIP lounge!
{% endif %}

Verwenden Sie stattdessen eine Bedingung, um die Variable zu setzen:

1
2
3
4
5
6
7
8
{% assign is_vip = false %}
{% if total_spend > 100 %}
{% assign is_vip = true %}
{% endif %}

{% if is_vip %}
Welcome to the VIP lounge!
{% endif %}

Standardattribute und angepasste Attribute

Wenn Sie den folgenden Text in Ihre Nachricht einfügen: {{${first_name}}}, wird der Vorname der Nutzer:in (aus dem Nutzerprofil abgerufen) beim Senden der Nachricht eingesetzt. Sie können dasselbe Format mit anderen Standardattributen verwenden.

Wenn Sie den Wert eines angepassten Attributs verwenden möchten, müssen Sie den Namespace „custom_attribute“ zur Variablen hinzufügen. Um beispielsweise ein angepasstes Attribut namens „zip code“ zu verwenden, würden Sie {{custom_attribute.${zip code}}} in Ihre Nachricht einfügen.

Tags einfügen

Sie können Tags einfügen, indem Sie zwei öffnende geschweifte Klammern {{ in einer beliebigen Nachricht eingeben. Dadurch wird eine Autovervollständigungsfunktion ausgelöst, die sich während der Eingabe weiter aktualisiert. Sie können sogar eine Variable aus den Optionen auswählen, die während der Eingabe erscheinen.

Wenn Sie einen angepassten Tag verwenden, können Sie den Tag kopieren und in die gewünschte Nachricht einfügen.

Ausnahmen für doppelte Klammern

Wenn Sie einen Tag innerhalb eines anderen Liquid-Tags verwenden, wie z. B. {% assign %} oder {% if %}, können Sie entweder doppelte Klammern oder keine Klammern verwenden. Nur wenn der Tag allein steht, muss er in doppelte Klammern eingeschlossen werden. Der Einfachheit halber können Sie immer doppelte Klammern verwenden.

Die folgenden Tags sind alle korrekt:

1
2
3
4
5
{% if custom_attribute.${Number_Game_Attended} == 1 %}
{% if {{custom_attribute.${Number_Game_Attended}}} == 1 %}

{% assign value_one = {{custom_attribute.${one}}} %}
{% assign value_one = custom_attribute.${one} %}

Zwischen HTML- und klassischem Editor wechseln

Wenn Sie zwischen dem HTML- und dem klassischen Editor wechseln, können sich Liquid-Snippets und Content Blocks in Ihrer Nachricht verschieben. Überprüfen Sie Ihr Template nach dem Wechsel des Editors. Wenn Sie eine besser vorhersagbare Layout-Kontrolle benötigen, verwenden Sie den Drag-and-Drop-Editor.

Vorformatierte Variablen einfügen

Sie können vorformatierte Variablen mit Standardwerten über das Modal Personalisierung hinzufügen einfügen, das sich in der Nähe jedes Template-Textfelds befindet.

Das Modal „Personalisierung hinzufügen“, das nach Auswahl von „Personalisierung einfügen“ erscheint. Das Modal enthält Felder für Personalisierungstyp, Attribut, optionalen Standardwert und zeigt eine Vorschau der Liquid-Syntax an.

Das Modal fügt Liquid mit Ihrem angegebenen Standardwert an der Stelle ein, an der sich Ihr Cursor befand. Die Einfügeposition wird auch durch das Vorschaufeld angegeben, das den Text davor und danach anzeigt. Wenn ein Textblock markiert ist, wird der markierte Text ersetzt.

Ein GIF des Modals „Personalisierung hinzufügen“, das zeigt, wie eine Nutzer:in „fellow traveler“ als Standardwert einfügt und das Modal den markierten Text „name“ im Composer durch das Liquid-Snippet ersetzt.

  1. In case- und when-Tags vergleicht Liquid den case-Ausdruck mit jedem when-Wert mittels Gleichheit (ähnlich wie die Verkettung von if und elsif mit ==). Sie können keine beliebigen Vergleichs- oder logischen Operatoren innerhalb einer when-Klausel verwenden, wie Sie es mit if und elsif tun. Beispiele finden Sie unter Bedingte Nachrichtenlogik

New Stuff!