Verwendung von Liquid-Vorlagen
Liquid-Vorlagen erweitern die Personalisierungsfunktionen von Pushwoosh erheblich, indem sie zusätzlich zur regulären Verwendung von dynamischem Inhalt eine anspruchsvolle Logik implementieren.
Die Personalisierung von Nachrichten in Pushwoosh basiert auf Tags (Benutzerdaten). Pushwoosh bietet eine Vielzahl von Standard-Tags und benutzerdefinierten Tags. Mit diesen können Sie den Vornamen, die Stadt, die Kaufhistorie usw. eines Benutzers angeben, um eine persönlichere Nachricht zu senden, zum Beispiel: Hallo {First_name}, danke für Ihre Bestellung von {item}.
Liquid-Vorlagen fügen dem dynamischen Inhalt mehr Logik hinzu. Wenn beispielsweise das Abonnement-Tag eines Benutzers „kostenlos“ enthält, können Sie ihm eine Nachricht senden: „Sichern Sie sich Ihren 10% Rabatt.“
Die Anpassung des Nachrichteninhalts an die IDs, Verhaltensweisen und Vorlieben der Benutzer ist der effizienteste Weg, um die Relevanz zu erhöhen und beeindruckendere Ergebnisse aus Ihren Marketingkampagnen zu erzielen.
Syntax
Anchor link toInhaltsvorlagen, die auf Liquid von Shopify basieren, verwenden eine Kombination aus Tags, Objekten und Filtern, um dynamische Inhalte zu laden. Inhaltsvorlagen ermöglichen es Ihnen, auf bestimmte Variablen innerhalb einer Vorlage zuzugreifen und deren Daten auszugeben, ohne etwas über die Daten selbst wissen zu müssen.
Objekte
Anchor link toObjekte definieren den Inhalt, der einem Benutzer angezeigt wird. Objekte sollten in doppelte geschweifte Klammern eingeschlossen werden: {{ }}
Wenn Sie beispielsweise eine Nachricht personalisieren, senden Sie {{Name}} in deren Textkörper, um die Namen der Benutzer zum Inhalt der Nachricht hinzuzufügen. Der Name des Benutzers (Wert des Name-Tags) ersetzt das Liquid-Objekt in einer Nachricht, die der Benutzer sehen wird.
Hallo {{Name}}! Wir freuen uns, dass Sie wieder da sind!Hallo Anna! Wir freuen uns, dass Sie wieder da sind!
Tags
Anchor link toTags erstellen die Logik und den Kontrollfluss für Vorlagen. Die geschweiften Klammern mit Prozentzeichen {% und %} und der Text, den sie umschließen, erzeugen keine sichtbare Ausgabe, wenn die Vorlage gerendert wird. Dies ermöglicht es Ihnen, Variablen zuzuweisen und Bedingungen oder Schleifen zu erstellen, ohne dem Benutzer die Liquid-Logik anzuzeigen.
Zum Beispiel können Sie mit dem if-Tag die Sprache der Nachricht variieren, je nachdem, welche Sprache auf dem Gerät des Benutzers eingestellt ist:
{% if Language == 'fr' %}Salut!{% else %}Hello!{% endif %}Salut!
Hello!
Tag-Operatoren
Anchor link to| Operator | Beschreibung |
|---|---|
== | gleich |
!= | ungleich |
> | größer als |
< | kleiner als |
>= | größer als oder gleich |
<= | kleiner als oder gleich |
or | logisches oder |
and | logisches und |
contains | prüft auf das Vorhandensein einer Teilzeichenfolge innerhalb einer Zeichenfolge oder eines Arrays von Zeichenfolgen |
Filter
Anchor link toFilter ändern die Ausgabe eines Liquid-Objekts oder einer Variablen. Sie werden innerhalb von doppelten geschweiften Klammern {{ }} und bei der Zuweisung von Variablen verwendet und sind durch ein Pipe-Zeichen | getrennt. Mehrere Filter können auf eine Ausgabe angewendet werden und werden von links nach rechts angewendet.
{{ Name | capitalize | prepend:"Hello " }}Hello Anna
Verwendung von Liquid-Vorlagen in Nachrichten, die über API gesendet werden
Anchor link toVerwenden Sie die Liquid-Syntax in Ihren createMessage-Anfragen, um Liquid-Vorlagen zu implementieren. Vorlagen sind für den Parameter „content“ der createMessage-Anfrage verfügbar, sowie für jeden anderen Parameter, der dynamischen Inhalt unterstützt, insbesondere die plattformspezifischen Parameter „title“, „subtitle“ und „image“.
Durch die Verwendung von Inhaltsvorlagen können Sie entweder die Daten in Ihren API-Anfragen angeben (indem Sie den Parameter „template_bindings“ übergeben) oder die Daten aus den auf den Geräten der Benutzer gespeicherten Tag-Werten abrufen (indem Sie den Parameter „template_bindings“ nicht verwenden). Auf diese Weise können Sie benutzerbasierte Push-Kampagnen erstellen, die äußerst relevante Inhalte enthalten.
Um die Vorlagenlogik mit Tags zu definieren, die Leerzeichen in ihren Namen haben, verwenden Sie die folgende Technik:
Beispiel
{% capture my_tag %}{{My Tag}}{% endcapture %}{% if my_tag == 'value' %}Inhalt, der in diesem Fall gesendet wird{% else %}Inhalt, der andernfalls gesendet wird{% endif %}Anwendungsfälle für Liquid-Vorlagen
Anchor link toHier finden Sie mehrere Anwendungsfälle, in denen Liquid-Vorlagen nützlich sind.
Mehrsprachige Push-Benachrichtigungen
Anchor link toLiquid-Vorlagen ermöglichen es, genau festzulegen, in welcher Sprache Benutzer Ihre Push-Nachrichten erhalten sollen. Sehen Sie sich das einfache Beispiel der API-Anfrage und der empfangenen Nachricht an, abhängig von den in der Anfrage verwendeten Vorlagenbindungen.
{% if Language == 'es' %}¡Hola!{% else %}Hello!{% endif %}{ "request": { "application": "XXXXX-XXXXX", // Pushwoosh-App-Code "auth": "yxoPUlw.....IyEX4H", // API-Zugriffstoken aus dem Pushwoosh Control Panel "notifications" : [ // Parameter für Push-Nachrichten { "content": "{% raw %}{% if language == 'es' %}¡Hola!{% else %}hello!{% endif %}{% endraw %}", "template_bindings": { // optional. Wenn keine template_bindings in einer Anfrage übergeben werden, werden die Tag-Werte vom Gerät verwendet. "language" : "es" } } ] }}Sprache ist ‘es’: ¡Hola!
Sprache ist ‘en’: Hello!
Aufforderung zum Abonnement-Upgrade
Anchor link toErmutigen Sie Ihre Kunden, ihr Abonnement basierend auf ihrem aktuellen Plan zu aktualisieren.
{% if Subscription == 'Basic' %} Upgraden Sie auf Silber, um mehr Produktfunktionen und 24/7-Support zu erhalten.{% elsif Subscription == 'Silver' %} Upgraden Sie auf Gold für priorisierten Support und erweiterte Funktionen.{% else %} Bitte kontaktieren Sie Ihren Manager, um Ihr Abonnement zu erneuern.{% endif %}{ "request": { "application": "XXXXX-XXXXX", // Pushwoosh-App-Code "auth": "yxoPUlw.....IyEX4H", // API-Zugriffstoken aus dem Pushwoosh Control Panel "notifications" : [ // Parameter für Push-Nachrichten { "content": "{% raw %}{% if Subscription == 'Basic' %}Upgraden Sie auf Silber, um mehr Produktfunktionen und 24/7-Support zu erhalten.{% elsif Subscription == 'Silver' %}Upgraden Sie auf Gold für priorisierten Support und erweiterte Funktionen.{% else %}Bitte kontaktieren Sie Ihren Manager, um Ihr Abonnement zu erneuern. {% endif %}{% endraw %}", "template_bindings": { // optional. Wenn keine template_bindings in einer Anfrage übergeben werden, werden die Tag-Werte vom Gerät verwendet. "language" : "es" } } ] }}Für Benutzer mit dem Basic-Abonnementplan: Upgraden Sie auf Silber, um mehr Produktfunktionen und 24/7-Support zu erhalten.
Für Benutzer mit dem Silver-Abonnementplan: Upgraden Sie auf Gold für priorisierten Support und erweiterte Funktionen.
Für Benutzer mit anderen Plänen: Bitte kontaktieren Sie Ihren Manager, um Ihr Abonnement zu erneuern.
Listen-Tags
Anchor link toInhaltsvorlagen sind sehr hilfreich, um mit Tags vom Typ Liste umzugehen.
Variablengröße
Anchor link toEiner der möglichen Anwendungsfälle ist die Bereitstellung unterschiedlicher Inhalte je nach der Anzahl der Werte, die das Tag enthält. Sie können beispielsweise Kunden mit unterschiedlichem Verhalten unterschiedliche Rabatte gewähren. Nehmen wir an, ein Kunde hat einige Artikel auf seiner Wunschliste – ermutigen Sie ihn zum Kauf mit dem passendsten Rabatt, basierend darauf, wie viele Produkte er kaufen wird!
{% if WishList.size >= 3 %}Erhalten Sie 20% Rabatt auf Ihren nächsten Einkauf!{% elsif WishList.size == 2 %}Erhalten Sie 10% Rabatt auf Ihren nächsten Einkauf!{% else %}Hey, schauen Sie sich die neue Oberbekleidung an!{% endif %}{ "request": { "application": "XXXXX-XXXXX", // Pushwoosh-App-Code "auth": "yxoPUlw.....IyEX4H", // API-Zugriffstoken aus dem Pushwoosh Control Panel "notifications" : [ // Parameter für Push-Nachrichten { "content": "{% raw %}{% if WishList.size >= 3 %}Erhalten Sie 20% Rabatt auf Ihren nächsten Einkauf!{% elsif WishList.size == 2 %}Erhalten Sie 10% Rabatt auf Ihren nächsten Einkauf!{% else %}Hey, schauen Sie sich die neue Oberbekleidung an!{% endif %}{% endraw %}", "template_bindings": { "WishList" : ["Skinny Low Ankle Jeans", "Linen Trenchcoat", "High Waisted Denim Skirt", "Strappy Tiered Maxi Dress"] } } ] }}

Variable enthält
Anchor link toEin weiterer Fall, den Sie möglicherweise abdecken müssen, ist der Umgang mit den Werten von Listen-Tags und die Bereitstellung des relevantesten Inhalts basierend darauf, welche Werte das Tag enthält.
{% if WishList contains 'Skinny Low Ankle Jeans' %}Erhalten Sie 20% Rabatt auf Produkte in Ihrer Wunschliste!{% else %}Hey, schauen Sie sich die brandneuen Skinny Low Ankle Jeans an!{% endif %}{ "request": { "application": "C90C0-0E786", "auth": "yxoPUlw.....IyEX4H", // API-Zugriffstoken aus dem Pushwoosh Control Panel "notifications" : [ // Parameter für Push-Nachrichten { "content": "{% raw %}{% if WishList contains 'Skinny Low Ankle Jeans' %}Erhalten Sie 20% Rabatt auf Ihren nächsten Einkauf!{% else %}Hey, schauen Sie sich die brandneuen Skinny Low Ankle Jeans an!{% endif %}{% endraw %}", "template_bindings": { "WishList" : ["Skinny Low Ankle Jeans", "Linen Trenchcoat", "High Waisted Denim Skirt", "Strappy Tiered Maxi Dress"] } } ] }}

Pluralformen
Anchor link toDurch die Verwendung der Inhaltsvorlagen können Sie den Nachrichteninhalt an das Verhalten der Benutzer anpassen. Sie können beispielsweise den Nachrichtentext so ändern, dass er Pluralwörter enthält, falls das Listen-Tag mehr als einen Wert enthält.
Erhalten Sie 20% Rabatt auf den Artikel{% if WishList.size > 1 %} in Ihrer Wunschliste!{% else %} in Ihrer Wunschliste!{% endif %}{ "request": { "application": "C90C0-0E786", "auth": "yxoPUlw.....IyEX4H", // API-Zugriffstoken aus dem Pushwoosh Control Panel "notifications" : [ // Parameter für Push-Nachrichten { "content": "Erhalten Sie 20% Rabatt auf den Artikel{% raw %}{% if WishList.size > 1 %}e in Ihrer Wunschliste!{% else %} in Ihrer Wunschliste!{% endif %}{% endraw %}", "template_bindings": { // optional. Wenn keine template_bindings in einer Anfrage übergeben werden, werden die Tag-Werte vom Gerät verwendet. "WishList" : ["Skinny Low Ankle Jeans", "Linen Trenchcoat", "High Waisted Denim Skirt", "Strappy Tiered Maxi Dress"] } } ] }}

Zeitzone
Anchor link toDie Vorlage für Zeitzonen konvertiert das Datum und die Uhrzeit entsprechend der angegebenen Zeitzone.
{{ MyDate | timezone: MyTimezone | date: \"%Y-%m-%d %H:%M\" }}{ "request" : { "auth" : "3H9bk8w3.....Acge2RbupTB", // API-Zugriffstoken aus dem Pushwoosh Control Panel "application" : "XXXXX-XXXXX", // Pushwoosh-App-Code "notifications" : [ // Parameter für Push-Nachrichten { "content": "Aktuelles Datum: {{ MyDate | timezone: MyTimezone | date: \"%Y-%m-%d %H:%M\" }}", "template_bindings": { // optional. Wenn keine template_bindings in einer Anfrage übergeben werden, werden die Tag-Werte vom Gerät verwendet. "MyDate" : "2019-07-23 15:00", "MyTimezone" : "Asia/Dubai" } } ] }}
Verbundener Inhalt
Anchor link toVerbundener Inhalt ist eine Funktion in Liquid-Vorlagen, mit der Sie Daten aus einer externen Quelle, wie z. B. einem Webdienst, dynamisch abrufen und direkt in Ihren E-Mail- oder Push-Benachrichtigungsnachrichten verwenden können. Diese Funktion ermöglicht eine Echtzeit-Personalisierung, indem JSON-Daten von einer angegebenen URL abgerufen und in einer Variablen gespeichert werden, die in Ihrem Inhalt verwendet werden kann.
Wichtige Anwendungsfälle
Anchor link to-
Produktempfehlungen: Zeigen Sie personalisierte Produktlisten an, die auf jeden Benutzer zugeschnitten sind.
-
Promo-Codes: Fügen Sie einzigartige Promo-Codes ein, die von einem Backend-Dienst generiert werden.
Voraussetzungen
Anchor link to- Um Verbundene Inhalte zu verwenden, müssen Sie über einen eigenen Backend-Dienst verfügen, der die erforderlichen Daten (z. B. Promo-Codes, Produktempfehlungen) basierend auf Benutzer-ID, HWID oder benutzerdefinierten Tags generiert und bereitstellt. Pushwoosh ruft diese Daten dann ab, bevor eine Nachricht gesendet wird.
Schritt-für-Schritt-Implementierungsanleitung
Anchor link toSchritt 1. Backend-Dienst einrichten
Anchor link toDer Backend-Dienst sollte:
- Eine Anfrage mit benutzerspezifischen Parametern (z. B.
userId) akzeptieren. Verbundene Inhalte unterstützenUserID,HWIDoder alle benutzerdefinierten Tags, die Sie in Ihrem Projekt eingerichtet haben. - Eine JSON-Antwort mit den erforderlichen Daten zurückgeben. Dieser Inhalt kann dann dynamisch in Nachrichten eingefügt werden.
Schritt 2. Erstellen Sie ein Preset mit Verbundenem Inhalt in Pushwoosh
Anchor link to- Fügen Sie im Push- oder E-Mail-Inhaltseditor die Syntax für Verbundene Inhalte in das Nachrichtenfeld ein.
Beispiel
{% connected_content http://your-backend-url.com?userId={{ ${userid} }} :save result %}Syntax-Aufschlüsselung
connected_content | Ruft JSON-Daten von der angegebenen Backend-URL ab. |
http://your-backend-url.com | Der Backend-Endpunkt, der die erforderlichen Daten im JSON-Format zurückgibt. |
userId={{ ${userid} }} | Ein dynamischer Abfrageparameter, der die Benutzer-ID an das Backend übergibt. |
:save result | Speichert die abgerufene JSON-Antwort in der Ergebnisvariablen zur Verwendung in Liquid-Vorlagen. |

Authentifizierung (optional)
Wenn Ihr Backend-Dienst eine Authentifizierung erfordert, können Sie einen API-Schlüssel oder ein Token in die Anfrage für Verbundene Inhalte aufnehmen, um einen sicheren Zugriff zu gewährleisten.
{% connected_content http://your-backend-url.com?userId={{ ${userid} }}&auth=YOUR_API_KEY :save result %}Sie können Authentifizierungsdaten (oder andere Daten) auch als HTTP-Header mit dem optionalen :headers-Parameter senden – einem JSON-Objekt aus Header-Namen und -Werten.
{% connected_content http://your-backend-url.com?userId={{ ${userid} }} :headers {"Authorization": "Bearer YOUR_TOKEN", "X-Api-Key": "YOUR_API_KEY"} :save result %}:headers {...} | Ein JSON-Objekt von HTTP-Headern, die mit der Anfrage gesendet werden, z. B. Authorization: Bearer <token>. |
Verwendung von Tags in Verbundenen Inhalten
Um benutzerdefinierte Tags einzuschließen, fügen Sie sie als Abfrageparameter in die Verbundene Inhalte-Anfrage ein ({{ tag_name }}).
{% connected_content http://your-backend-url.com?userId={{ ${userid} }}{{ Language }} :save result %}- Fügen Sie als Nächstes den Nachrichtentext hinzu, der die abgerufenen Daten enthält, wie folgt:
Hey, {{userid}}, hol dir deinen persönlichen Promo-Code - {{result.code}}
- Nachdem Sie den Nachrichteninhalt fertiggestellt und die Preset-Einstellungen konfiguriert haben, speichern Sie es zur Wiederverwendung in Kampagnen.
Schritt 3. Senden Sie eine Nachricht mit dem konfigurierten Preset
Anchor link toSenden Sie eine Nachricht mit diesem Preset über das einmalige Push-Formular oder das E-Mail-Formular oder eine Customer Journey.