Skip to content

Filter

Dieser Referenzartikel bietet eine Übersicht über Filter in Liquid und behandelt, welche Filter von Braze unterstützt werden. Sie suchen nach Ideen, wie Sie diese Filter einsetzen können? Schauen Sie sich unsere Liquid-Anwendungsfallbibliothek an.

Filter ermöglichen es Ihnen, die Ausgabe von Zahlen, Strings, Variablen und Objekten in Liquid zu verändern. Sie können Filter verwenden, um statischen oder dynamischen Text umzuformatieren, z. B. um einen String von Kleinbuchstaben in Großbuchstaben umzuwandeln oder mathematische Operationen wie Addition oder Division durchzuführen.

Filter-Syntax

Filter müssen innerhalb eines Ausgabe-Tags {{ }} platziert werden und werden durch ein Pipe-Zeichen | gekennzeichnet.

1
{{"Big Sale" | upcase}}
1
BIG SALE

In diesem Beispiel ist Big Sale ein String und upcase der angewendete Filter.

Syntax für mehrere Filter

Sie können mehrere Filter auf eine Ausgabe anwenden. Sie werden von links nach rechts angewendet.

1
 {{ "Big Sale" | upcase | remove: "BIG" }}
1
SALE

Array-Filter

Array-Filter werden verwendet, um die Ausgabe von Arrays zu verändern.

Filter Definition Unterstützt
join Verbindet die Elemente eines Arrays mit dem als Parameter übergebenen Zeichen. Das Ergebnis ist ein einzelner String. ✅ Ja
first Gibt das erste Element eines Arrays zurück. In einem Array mit angepassten Attributen ist dies der älteste hinzugefügte Wert. ✅ Ja
last Gibt das letzte Element eines Arrays zurück. In einem Array mit angepassten Attributen ist dies der zuletzt hinzugefügte Wert. ✅ Ja
compact Entfernt alle nil-Elemente aus einem Array. ✅ Ja
concat Kombiniert ein Array mit einem anderen Array. ✅ Ja
find_index Gibt das Element an der angegebenen Indexposition in einem Array zurück. Das erste Element in einem Array wird mit [0] referenziert. ⛔ Nein
map Akzeptiert ein Attribut eines Array-Elements als Parameter und erstellt ein Array aus den Werten jedes Array-Elements. ✅ Ja
reverse Kehrt die Reihenfolge der Elemente in einem Array um. ✅ Ja
size Gibt die Größe eines Strings (Anzahl der Zeichen) oder eines Arrays (Anzahl der Elemente) zurück. ✅ Ja
slice Gibt einen Teilstring eines Strings oder eine Teilmenge eines Arrays zurück, beginnend am angegebenen Index. ✅ Ja
sort Sortiert die Elemente eines Arrays nach einem bestimmten Attribut eines Elements im Array. ✅ Ja
sort_natural Sortiert die Elemente in einem Array in alphabetischer Reihenfolge ohne Berücksichtigung der Groß-/Kleinschreibung. ✅ Ja
uniq Entfernt alle doppelten Instanzen von Elementen in einem Array. ✅ Ja
where Filtert ein Array, sodass nur Elemente mit einem bestimmten Eigenschaftswert enthalten sind. ✅ Ja

Farbfilter

Farbfilter werden in Braze nicht unterstützt.

Schriftfilter

Schriftfilter werden in Braze nicht unterstützt.

Mathematische Filter

Mathematische Filter ermöglichen es Ihnen, mathematische Operationen durchzuführen. Wenn Sie mehrere Filter auf eine Ausgabe anwenden, werden sie von links nach rechts angewendet.

Filter Definition Unterstützt
abs Gibt den Absolutwert einer Zahl zurück. ✅ Ja
at_most Begrenzt eine Zahl auf einen Maximalwert. ✅ Ja
at_least Begrenzt eine Zahl auf einen Minimalwert. ✅ Ja
ceil Rundet eine Ausgabe auf die nächste ganze Zahl auf. ✅ Ja
divided_by Teilt eine Ausgabe durch eine Zahl. Die Ausgabe wird auf die nächste ganze Zahl abgerundet. Beachten Sie den folgenden Tipp, um Rundungen zu vermeiden. ✅ Ja
floor Rundet eine Ausgabe auf die nächste ganze Zahl ab. ✅ Ja
minus Subtrahiert eine Zahl von einer Ausgabe. ✅ Ja
plus Addiert eine Zahl zu einer Ausgabe. ✅ Ja
round Rundet die Ausgabe auf die nächste ganze Zahl oder die angegebene Anzahl von Dezimalstellen. ✅ Ja
times Multipliziert eine Ausgabe mit einer Zahl. ✅ Ja
modulo Teilt eine Ausgabe durch eine Zahl und gibt den Rest zurück. ✅ Ja

Mathematische Operationen mit angepassten Attributen

Beachten Sie, dass Sie keine mathematischen Operationen zwischen zwei angepassten Attributen durchführen können.

1
{{custom_attribute.${current_rewards_balance} | plus: {{custom_attribute.${giftcard_balance}}}}}

Dieses Beispiel würde nicht funktionieren, da Sie nicht mehrere angepasste Attribute in einer einzigen Liquid-Zeile referenzieren können. Stattdessen müssten Sie mindestens einem dieser Werte eine Variable zuweisen, bevor die mathematischen Funktionen ausgeführt werden. Das Addieren zweier angepasster Attribute erfordert zwei Zeilen Liquid:

  1. Eine, um das angepasste Attribut einer Variablen zuzuweisen,
  2. Eine, um die Addition durchzuführen.

Anwendungsfall: Aktuellen Kontostand berechnen

Nehmen wir an, wir möchten den aktuellen Kontostand einer Nutzerin oder eines Nutzers berechnen, indem wir das Guthabenkarten-Guthaben und das Rewards-Guthaben addieren.

  1. Verwenden Sie den assign-Tag, um das angepasste Attribut current_rewards_balance durch den Begriff „balance“ zu ersetzen. Das bedeutet, dass Sie jetzt eine Variable namens balance haben, die Sie bearbeiten können.
1
{% assign balance = {{custom_attribute.${current_rewards_balance}}} %}
  1. Verwenden Sie den plus-Filter, um das Guthabenkarten-Guthaben jeder Nutzerin und jedes Nutzers mit dem Rewards-Guthaben zu kombinieren, dargestellt durch das {{balance}}-Objekt.
1
2
{% assign balance = {{custom_attribute.${current_rewards_balance}}} %}
You have ${{custom_attribute.${giftcard_balance} | plus: {{balance}}}} to spend!
1
You have $35 to spend!

Geldfilter

Wenn Sie Nutzer:innen über ihren Kauf, einen Kontostand oder irgendetwas im Zusammenhang mit Geld informieren, sollten Sie Geldfilter verwenden. Geldfilter stellen sicher, dass Ihre Dezimalstellen an der richtigen Stelle stehen und kein Teil Ihres Updates verloren geht (wie die lästige 0 am Ende).

Filter Definition Unterstützt
money Formatiert Zahlen, um sicherzustellen, dass Dezimalstellen an der richtigen Stelle stehen und Nullen nicht am Ende von Zahlen abgeschnitten werden. ✅ Ja
money_with_currency Formatiert Zahlen mit dem Währungssymbol. ⛔ Nein
money_without_currency Formatiert Zahlen ohne das Währungssymbol. ⛔ Nein

Shopify-Geldfilter versus Braze-Geldfilter

Wenn Sie ein angepasstes Attribut eingeben (wie account_balance), sollten Sie immer den money-Filter verwenden, um Ihre Dezimalstellen an die richtige Stelle zu setzen und zu verhindern, dass Nullen am Ende von Zahlen abgeschnitten werden:

1
${{custom_attribute.${account_balance} | money}}
MIT DEM GELDFILTER OHNE DEN GELDFILTER
Mit Geldfilter Ohne Geldfilter
Wobei account_balance mit 17.8 eingegeben wird. Wobei account_balance mit 17.8 eingegeben wird.

Der money-Filter in Braze unterscheidet sich von Shopify, da er nicht automatisch Dezimalpunkte gemäß einer voreingestellten Einstellung anwendet. Nehmen wir zum Beispiel das folgende Szenario, in dem rewards_redeemed den Wert 145 enthält:

1
${{event_properties.${rewards_redeemed} | money }}
1
$145.00

Gemäß dem Shopify-money-Filter sollte die Ausgabe $1.45 sein, in Braze wird die Ausgabe jedoch $145.00 sein. Als Workaround können wir den divided_by-Filter verwenden, um die Zahl in eine Dezimalzahl umzuwandeln, bevor der Geldfilter angewendet wird:

1
${{event_properties.${rewards_redeemed} | divided_by: 100.00 | money }}
1
$1.45

String-Filter

String-Filter werden verwendet, um die Ausgaben und Variablen von Strings zu bearbeiten. Strings sind eine Kombination aus alphanumerischen Zeichen und müssen in gerade Anführungszeichen eingeschlossen werden.

Filter Beschreibung Unterstützt
append Hängt Zeichen an einen String an. ✅ Ja
camelize Wandelt einen String in CamelCase um. ⛔ Nein
capitalize Schreibt das erste Wort in einem String groß und wandelt die restlichen Zeichen in Kleinbuchstaben um. ✅ Ja
downcase Wandelt einen String in Kleinbuchstaben um. ✅ Ja
escape Escaped einen String. ✅ Ja
handleize Formatiert einen String in ein Handle. ⛔ Nein
md5 Wandelt einen String in einen MD5-Hash um. Weitere Informationen finden Sie unter Encoding-Filter. ✅ Ja
sha1 Wandelt einen String in einen SHA-1-Hash um. Weitere Informationen finden Sie unter Encoding-Filter. ✅ Ja
hmac_sha1_hex
(zuvor hmac_sha_1)
Wandelt einen String in einen SHA-1-Hash unter Verwendung eines Hash-basierten Nachrichtenauthentifizierungscodes (HMAC) um. Übergeben Sie den geheimen Schlüssel für die Nachricht als Parameter an den Filter. Weitere Informationen finden Sie unter Encoding-Filter. ✅ Ja
hmac_sha256 Wandelt einen String in einen SHA-256-Hash unter Verwendung eines Hash-basierten Nachrichtenauthentifizierungscodes (HMAC) um. Übergeben Sie den geheimen Schlüssel für die Nachricht als Parameter an den Filter. ✅ Ja
hmac_sha512 Wandelt einen String in einen SHA-512-Hash unter Verwendung eines Hash-basierten Nachrichtenauthentifizierungscodes (HMAC) um. Übergeben Sie den geheimen Schlüssel für die Nachricht als Parameter an den Filter. ✅ Ja
newline_to_br Fügt ein <br>-Zeilenumbruch-HTML-Tag vor jedem Zeilenumbruch in einem String ein. ✅ Ja
pluralize Gibt die Singular- oder Pluralversion eines englischen Strings basierend auf dem Wert einer Zahl aus. ⛔ Nein
prepend Stellt Zeichen einem String voran. ✅ Ja
remove Entfernt alle Vorkommen eines Teilstrings aus einem String. ✅ Ja
remove_first Entfernt nur das erste Vorkommen eines Teilstrings aus einem String. ✅ Ja
replace Ersetzt alle Vorkommen eines Strings durch einen Teilstring. ✅ Ja
replace_first Ersetzt das erste Vorkommen eines Strings durch einen Teilstring. ✅ Ja
slice Der slice-Filter gibt einen Teilstring zurück, beginnend am angegebenen Index. ✅ Ja
split Der split-Filter nimmt einen Teilstring als Parameter entgegen. Der Teilstring wird als Trennzeichen verwendet, um einen String in ein Array aufzuteilen. ✅ Ja
strip Entfernt Tabs, Leerzeichen und Zeilenumbrüche (alle Whitespace-Zeichen) von der linken und rechten Seite eines Strings. ✅ Ja
lstrip Entfernt Tabs, Leerzeichen und Zeilenumbrüche (alle Whitespace-Zeichen) von der linken Seite eines Strings. ⛔ Nein
rstrip Entfernt Tabs, Leerzeichen und Zeilenumbrüche (alle Whitespace-Zeichen) von der rechten Seite eines Strings. ⛔ Nein
strip_html Entfernt alle HTML-Tags aus einem String. ✅ Ja
strip_newlines Entfernt alle Zeilenumbrüche aus einem String. ✅ Ja
truncate Kürzt einen String auf die als ersten Parameter übergebene Zeichenanzahl. Auslassungspunkte (…) werden an den gekürzten String angehängt und sind in der Zeichenanzahl enthalten. ✅ Ja
truncatewords Kürzt einen String auf die als ersten Parameter übergebene Wortanzahl. Auslassungspunkte (…) werden an den gekürzten String angehängt. ✅ Ja
upcase Wandelt einen String in Großbuchstaben um. ✅ Ja

Zusätzliche Filter

Die folgenden allgemeinen Filter dienen vielen Zwecken, einschließlich der Formatierung oder Konvertierung von Inhalten.

Filter Beschreibung Unterstützt
date Wandelt einen Zeitstempel in ein anderes Datumsformat um. Weitere Informationen finden Sie unter Datumsfilter. ✅ Ja
default Legt einen Standardwert für jede Variable ohne zugewiesenen Wert fest. Kann mit Strings, Arrays und Hashes verwendet werden. ✅ Ja
format_address Formatiert eine Adresse, um die Adresselemente in der Reihenfolge gemäß ihrem Gebietsschema auszugeben. ⛔ Nein
highlight Umschließt Wörter in Suchergebnissen mit einem HTML-<strong>-Tag mit der Klasse „highlight“, wenn sie mit den eingegebenen Suchbegriffen übereinstimmen. ⛔ Nein

Weitere unterstützte Filter, wie Encoding- und URL-Filter, finden Sie auf unserer Seite Erweiterte Filter.

Datumsfilter

Der date-Filter kann verwendet werden, um einen Zeitstempel in ein anderes Datumsformat umzuwandeln. Sie können Parameter an den date-Filter übergeben, um den Zeitstempel umzuformatieren. Beispiele für diese Parameter finden Sie unter strfti.me.

Nehmen wir zum Beispiel an, dass der Wert von date_attribute der Zeitstempel 2021-06-03 17:13:41 UTC ist.

1
{{custom_attribute.${date_attribute} | date: '%b %d'}}
1
03 June

Zusätzlich zu den strftime-Formatierungsoptionen unterstützt Braze auch die Konvertierung eines Zeitstempels in Unix-Zeit mit dem %s-Datumsfilter. Um zum Beispiel date_attribute in Unix-Zeit zu erhalten:

1
{{custom_attribute.${date_attribute} | date: '%s' }}
1
1433351621
New Stuff!