bedingter Inhalt wenn-Anweisung wenn Bedingung show or hide content (Inhalt anzeigen oder ausblenden) liquid conditions ansonsten wenn sonst es sei denn Fall wenn Personalisierungslogik bedingter Text dynamischer Inhalt

Wie verwende ich Bedingungen, um Inhalte anzuzeigen oder auszublenden?

SecureMailMerge verwendet Liquid-Templating, sodass du Blöcke deines Betreffs oder Texts in {% if %} … {% endif %}-Tags einschließen kannst, um sie basierend auf den Spaltenwerten eines Empfängers anzuzeigen oder zu verbergen. Kombiniere Bedingungen mit Vergleichsoperatoren, else/elsif-Zweigen und dem contains-Schlüsselwort für volle Kontrolle.

SecureMailMerge personalisiert deine E-Mails mit Liquid Templating. Neben einfachen Tokens wie {{FirstName}} kannst du conditions (Bedingungen) verwenden, um Inhaltsblöcke basierend auf den Daten jedes Empfängers anzuzeigen, auszublenden oder zu ändern.

Conditions funktionieren sowohl in der subject line (Betreffzeile) als auch im email body (E-Mail-Text).

Basic if / endif

Wickle den Inhalt, den du optional machen möchtest, zwischen einen öffnenden {% if %}-Tag und einen schließenden {% endif %}-Tag ein. Die Bedingung wird für jeden Empfänger anhand des Werts in der benannten Spalte geprüft.

{% if Country == "Germany" %}
  Versand erfolgt aus unserem Lager in Berlin.
{% endif %}

Der Block wird nur für Empfänger eingefügt, deren Country-Spalte Germany entspricht. Alle anderen sehen an dieser Stelle nichts.

String-Werte müssen in Anführungszeichen ("Germany" oder 'Germany') gesetzt werden. Zahlen werden ohne Anführungszeichen geschrieben.

Groß- und Kleinschreibung, Leerzeichen und typografische Anführungszeichen sind egal

Bedingungen sind nachsichtig, kleine Unterschiede zwischen deiner Vorlage und deiner Tabelle verhindern nicht, dass eine Bedingung zutrifft:

  • Spaltennamen sind nicht case-sensitiv. {% if new == "TRUE" %} passt zu einer Spalte mit der Überschrift New, NEW oder new. Du musst die genaue Groß- und Kleinschreibung deiner Überschrift nicht beachten.
  • Textvergleiche ignorieren Groß- und Kleinschreibung sowie umgebende Leerzeichen. Eine Bedingung wie {% if New == "TRUE" %} passt zu einer Zelle, die TRUE, true oder sogar True enthält. Werte werden ohne Berücksichtigung von Groß-/Kleinschreibung oder führenden und nachfolgenden Leerzeichen verglichen.
  • Gerade und geschwungene Anführungszeichen werden gleich behandelt. Wenn dein Editor deine geraden Anführungszeichen ("TRUE") automatisch in geschwungene „smart“ Anführungszeichen (“TRUE”) umwandelt, funktioniert die Bedingung trotzdem.
{% if new == "TRUE" %}
  Welcome aboard! Here's what to do first.
{% endif %}

Das obige Beispiel passt, egal ob deine Spalte New oder new heißt und ob die Zelle TRUE, true oder True enthält.

Hinzufügen eines else-Zweigs

Verwende {% else %}, um alternativen Inhalt bereitzustellen, wenn die Bedingung falsch ist.

{% if Plan == "Premium" %}
  Thanks for being a Premium customer, your priority support line is +1 555 0100.
{% else %}
  Need a hand? Reply to this email and we'll help out.
{% endif %}

Mehrere Zweige mit elsif

Verkette mehrere Bedingungen mit {% elsif %}. Der erste passende Zweig gewinnt.

{% if Tier == "Gold" %}
  You've unlocked our Gold benefits.
{% elsif Tier == "Silver" %}
  You're on the Silver plan.
{% else %}
  Welcome aboard!
{% endif %}

Vergleichsoperatoren

Du kannst Spaltenwerte mit einem dieser Operatoren vergleichen:

OperatorBedeutung
==gleich
!=ungleich
>größer als
<kleiner als
>=größer oder gleich
<=kleiner oder gleich
{% if OrderTotal >= 100 %}
  You qualify for free shipping!
{% endif %}

Bedingungen mit and / or kombinieren

Verwende and und or, um mehr als eine Spalte gleichzeitig zu testen.

{% if Country == "USA" and Plan == "Premium" %}
  Your US Premium perks are active.
{% endif %}

Überprüfen, ob eine Zelle einen Wert hat

In Liquid ist eine leere Zelle immer noch “truthy”, daher ist {% if Notes %} nicht eine zuverlässige Methode, um auf einen Wert zu prüfen. Verwende stattdessen blank, da es leere Zellen und Zellen, die nur Leerzeichen enthalten, erkennt:

{% if Notes != blank %}
  A note from your account manager: {{Notes}}
{% endif %}

Um das Gegenteil zu tun, also Inhalt nur anzuzeigen, wenn eine Zelle leer ist, kehre den Vergleich um:

{% if PhoneNumber == blank %}
  We don't have a phone number on file. Reply to add one.
{% endif %}

Spaltennamen mit Leerzeichen

Wenn dein Spaltenkopf Leerzeichen (oder andere Sonderzeichen) enthält, beziehe dich darauf mit der Klammernotation, genauso wie du es bei einem normalen Token tun würdest:

{% if ["Account Status"] == "Active" %}
  Your account is in good standing.
{% endif %}

Für einfache Merge-Tokens (außerhalb einer Bedingung) kannst du jetzt auch einen Kopf mit Leerzeichen direkt schreiben, ohne die Klammern: {{ First Name }} funktioniert genauso wie {{ ["First Name"] }}.

Einen Teil eines Werts mit contains abgleichen

contains überprüft, ob ein Textwert eine Teilzeichenfolge enthält.

{% if Email contains "@gmail.com" %}
  Tip: add us to your Gmail contacts so we don't land in Promotions.
{% endif %}

Eine Bedingung mit unless umkehren

{% unless %} ist das Gegenteil von {% if %}, der Block wird nur angezeigt, wenn die Bedingung false ist.

{% unless Country == "USA" %}
  International shipping rates apply.
{% endunless %}

Einen von vielen Werten mit case / when auswählen

Wenn Du zwischen mehreren festen Werten wechseln musst, ist {% case %} sauberer als eine lange elsif-Kette.

{% case Language %}
  {% when "de" %}
    Vielen Dank für Ihre Bestellung!
  {% when "fr" %}
    Merci pour votre commande !
  {% else %}
    Thank you for your order!
{% endcase %}

Tipps

  • Bedingungen können jeden Inhalt umschließen, Text, Links, Bilder oder sogar andere Tokens.
  • Leerzeichen und Zeilenumbrüche innerhalb von {% if %}-Blöcken bleiben erhalten, also platziere deine Tags sorgfältig, um leere Zeilen in der finalen E-Mail zu vermeiden.
  • Du kannst Bedingungen mit dem default value Filter für Ersatztext kombinieren und mit date formatting für Datumsangaben.
  • Schließe immer jeden Tag: {% if %} benötigt {% endif %}, {% unless %} benötigt {% endunless %} und {% case %} benötigt {% endcase %}. Ein fehlender schließender Tag verursacht einen liquid syntax error.

Ready to try SecureMailMerge yourself?

SecureMailMerge for Outlook

Runs inside Outlook, with no external app needed.

Windows Mac Web New Outlook
Try Free in Outlook

Free version, no credit card. A license removes the promotional footer.