Verwendung von Liquid-Vorlagen
Liquid-Vorlagen erweitern die Personalisierungsmöglichkeiten von Pushwoosh erheblich, indem sie zusätzlich zur regulären Verwendung von dynamischen Inhalten 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 dynamischen Inhalten mehr Logik hinzu. Wenn beispielsweise das Abonnement-Tag eines Benutzers „kostenlos“ enthält, können Sie ihm eine Nachricht senden: „Sichern Sie sich 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.
Hi {{Name}}! We're glad you're back!Hi Anna! We’re glad you’re back!
Tags
Anchor link toTags erstellen die Logik und den Kontrollfluss für Vorlagen. Die geschweiften Klammer-Prozent-Trennzeichen {% und %} und der Text, den sie umgeben, 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 eines Substrings in einem String oder einem Array von Strings |
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 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 sowie für jeden anderen Parameter verfügbar, der dynamische Inhalte unterstützt, insbesondere für die plattformspezifischen Parameter „title“, „subtitle“ und „image“.
Durch die Verwendung von Inhaltsvorlagen können Sie entweder die Daten in Ihren API-Anfragen angeben (durch Übergabe des Parameters „template_bindings“) 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 mit äußerst relevanten Inhalten erstellen.
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' %}In diesem Fall zu sendender Inhalt{% else %}Andernfalls zu sendender Inhalt{% 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 die empfangene 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 der Push-Nachricht { "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' %} Upgrade to Silver for getting more product features and 24/7 support.{% elsif Subscription == 'Silver' %} Upgrade to Gold for priority support and advanced features.{% else %} Please contact your manager to renew your subscription.{% endif %}{ "request": { "application": "XXXXX-XXXXX", // Pushwoosh-App-Code "auth": "yxoPUlw.....IyEX4H", // API-Zugriffstoken aus dem Pushwoosh Control Panel "notifications" : [ // Parameter der Push-Nachricht { "content": "{% raw %}{% if Subscription == 'Basic' %}Upgrade to Silver for getting more product features and 24/7 support.{% elsif Subscription == 'Silver' %}Upgrade to Gold for priority support and advanced features.{% else %}Please contact your manager to renew your subscription. {% 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: Führen Sie ein Upgrade auf Silver durch, um mehr Produktfunktionen und 24/7-Support zu erhalten.
Für Benutzer mit dem Silver-Abonnementplan: Führen Sie ein Upgrade auf Gold durch, um Prioritätssupport und erweiterte Funktionen zu erhalten.
Für Benutzer mit anderen Plänen: Bitte kontaktieren Sie Ihren Manager, um Ihr Abonnement zu verlängern.
Listen-Tags
Anchor link toInhaltsvorlagen sind sehr hilfreich, um Tags vom Typ Liste zu handhaben.
Variablengröße
Anchor link toEiner der möglichen Anwendungsfälle ist die Bereitstellung unterschiedlicher Inhalte je nach 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 %}Get 20% off your next purchase!{% elsif WishList.size == 2 %}Get a 10% discount on your next purchase!{% else %}Hey, take a look at new outwears!{% endif %}{ "request": { "application": "XXXXX-XXXXX", // Pushwoosh-App-Code "auth": "yxoPUlw.....IyEX4H", // API-Zugriffstoken aus dem Pushwoosh Control Panel "notifications" : [ // Parameter der Push-Nachricht { "content": "{% raw %}{% if WishList.size >= 3 %}Get 20% off your next purchase!{% elsif WishList.size == 2 %}Get a 10% discount on your next purchase!{% else %}Hey, take a look at new outwears!{% 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' %}Get 20% off products in your wishlist!{% else %}Hey, take a look at the brand new Skinny Low Ankle Jeans!{% endif %}{ "request": { "application": "C90C0-0E786", "auth": "yxoPUlw.....IyEX4H", // API-Zugriffstoken aus dem Pushwoosh Control Panel "notifications" : [ // Parameter der Push-Nachricht { "content": "{% raw %}{% if WishList contains 'Skinny Low Ankle Jeans' %}Get 20% off your next purchase!{% else %}Hey, take a look at the brand new Skinny Low Ankle Jeans!{% endif %}{% endraw %}", "template_bindings": { "WishList" : ["Skinny Low Ankle Jeans", "Linen Trenchcoat", "High Waisted Denim Skirt", "Strappy Tiered Maxi Dress"] } } ] }}

Plurale
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.
Get 20% off item{% if WishList.size > 1 %} s in your WishList!{% else %} in your Wishlist!{% endif %}{ "request": { "application": "C90C0-0E786", "auth": "yxoPUlw.....IyEX4H", // API-Zugriffstoken aus dem Pushwoosh Control Panel "notifications" : [ // Parameter der Push-Nachricht { "content": "Get 20% off item{% raw %}{% if WishList.size > 1 %}s in your WishList!{% else %} in your Wishlist!{% 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 der Push-Nachricht { "content": "Current Date: {{ 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-Benachrichtigungen 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 Connected Content zu verwenden, müssen Sie über einen eigenen Backend-Dienst verfügen, der die erforderlichen Daten (z. B. Promo-Codes, Produktempfehlungen) basierend auf User 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. Connected Content unterstütztUserID,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. Ein Preset mit Connected Content in Pushwoosh erstellen
Anchor link to- Fügen Sie im Push- oder E-Mail-Inhaltseditor die Connected-Content-Syntax 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 Connected-Content-Anfrage 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 auch Authentifizierungsdaten (oder andere Daten) 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 mit HTTP-Headern, die mit der Anfrage gesendet werden, z. B. Authorization: Bearer <token>. |
Verwendung von Tags in Connected Content
Um benutzerdefinierte Tags einzuschließen, fügen Sie sie als Abfrageparameter in die Connected Content-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}}, grab your personal 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.