Mehrere Objekte in einer E-Mail darstellen

Wenn wir mehrere Objekte mit einer E-Mail verknüpfen, funktionieren die Objekt-Variablen {{ einheit.titel }}, {{ einheit.adresse }}, etc. nur für das erste verknüpfte Objekt. Um alle verknüpften Objekte in der E-Mail darstellen zu können, müssen wir eine "Schleife" durchgehen. Das machen wir so:

{% for einheit in objekte %}
{{ einheit.titel }} – {{ einheit.plz }} {{ einheit.stadt }}
Preis: {{ einheit.preis }}
{% endfor %}

Wenn 2 Objekte verknüpft sind, wird der Block zwischen "{% for einheit in objekte %}" und "{% endfor %}" 2x ausgeführt und wir erhalten am Ende folgendes:

Schöne Wohnung in Berlin Mitte – 12345 Berlin
Preis: 150.000 €

Tolle Villa in Tegel – 15012 Berlin
Preis: 510.000 €

Hinweis: Um andere Inhalte anzeigen zu lassen, können die Internen-Bezeichnungen (einheit.typ, einheit.titelbild, einheit.einheitennummer, etc.) der normalen Email-Variablen verwendet werden.

Anstatt einheit. kann auch. o. in einem Loop verwendet werden um die Übersichtlichkeit zu verbessern. Unten ist der Link zur Objekt-Landing-Page als Linktext oder als Button hinterlegt. Wird im Textbaustein "Rechtsformular anzeigen" aktiviert, gelangt der Interessent zunächst auf das Rechtsformular.

{% for o in objekte %}

{{ o.titelbild | breite:200 }}
{{ o.titel }}
{{ o.typ }} in {{ o.plz }} {{ o.ort }}
{{ o.preis }}
{{ o.provision }}

{{ o.link | linktext: "Zum Angebot" }} <!-- als Link -->
{{ o.url | button: "Zum Angebot" }} <!-- oder als Button -->

{% endfor %}

Bestimmte Texte nur unter bestimmten Bedingungen anzeigen

Manchmal nutzen wir Textbausteine, die sich nur minimal voneinander unterscheiden.
In der Regel wählen wir den einen oder den anderen Textbaustein dann anhand von einzelnen, kleinen Bedingungen aus, wie Kauf- oder Miet-Objekt.
Bei Kauf-Objekten wird Textbaustein-A und bei Miet-Objekten Textbaustein-B ausgewählt, weil sich ein Paragraph unterscheidet.

Für solche Fälle haben wir zwei Lösungsmöglichkeiten:

1. Wir erstellen einfach mehrere Textbausteine mit fast identischem Inhalt
2. Wir nutzen Abfragen innerhalb eines Textbausteins

Die Abfrage würde dann so aussehen:

{% if einheit.vermarktungsart == "Kauf" %}
Das Objekt steht zum Verkauf und ist daher provisionspflichtig.
{% else %}
Das Objekt steht zur Miete und ist damit provisionsfrei!
{% endif %}

Auf den zweiten Teil mit dem "{% else %}" kann auch verzichtet werden, wenn wir nur einen Text ein-/ausblenden wollen:

{% if einheit.vermarktungsart == "Kauf" %}
Das Objekt steht zum Verkauf und ist daher provisionspflichtig.
{% endif %}

Mit diesem Wissen, können wir viele verschiedene Fälle abdecken, z.B. wenn wir etwas nur für einen bestimmten Objekttyp anzeigen möchten:

{% if einheit.typ == "Büro" %}
Dieser Text wird nur angezeigt, wenn das Objekt ein Büro ist.
{% endif %}

oder wenn wir darauf hinweisen möchten, dass das Objekt noch vermietet ist:

{% if einheit.vermietet == "Ja" %}
Achtung: Das Objekt ist vermietet!
{% endif %}

Wenn abgefragt werden soll, ob etwas vorhanden ist oder nicht, reicht folgendes aus:

{% if einheit.titelbild %}
Dieser Text erscheint, wenn ein Titelbild im Objekt verlegt ist.
{% endif %}


Hinweis: Um andere Inhalte/Bedingungen abzufragen, können die Internen-Bezeichnungen (einheit.typ, einheit.titelbild, einheit.einheitennummer, etc.) der normalen Email-Variablen verwendet werden.

Die Bilder eines Objektes durchgehen

Manchmal möchte man nicht nur das Titelbild eines Objektes anzeigen, sondern vielleicht das zweite Bild oder man möchte die ersten 3 Bilder anzeigen. Dafür würde man wieder eine Schleife verwenden.

Um das zweite Bild eines Objektes auszugeben:

{% for bild in einheit.bilder offset:1, limit:1 %}
  {{ bild }}
{% endfor %}

Das offset:1  überspringt das erste Bild, das limit:1 besagt, dass nach einem Bild Schluss ist. Somit wird nur das zweite Bild ausgegeben.

Möchte man die ersten 3 Bilder anzeigen:

{% for bild in einheit.bilder limit:3 %}
  {{ bild }}
{% endfor %}

Ein offset  braucht man in dem Fall nicht, weil ab dem ersten Bild begonnen werden soll.

Button

Wenn man einen eigenen Button erstellen möchte, dann geht das mit folgender Funktion:

{{ "https://www.google.com" | button: "klick mich", "#FFBB00" }}


Der erste Wert ist die URL auf die man verlinken möchte. Hinter button: steht in den Anführungszeichen der Text des Buttons, gefolgt von der Farbe des Buttons im Hex Format in Anführungszeichen.

Zusätzlich append für URL-Parameter nutzen, wenn Variablen genutzt werden sollen!

{{ "https://google.com/?h=a45500f2df7e2e70&uid=" | append: einheit.einheitennummer | append: "pid=" | append: kontakt.email | button: "klick mich", "#FFBB00" }}

Mehrere PDF-Exposé versenden, geht mit folgendem Button:

{{ einheit.dokument_exposee_link }}

Wenn, dann

Wenn man in einem Textbaustein für verschiedene Objekte oder Projekte verschiedenen Informationen anzeigen möchte, dann benötigt man eine Wenn-Dann-Funktion.

{% if projekt.name == "alpha" %}
Hier steht ein Text oder Link
{% elsif projekt.name == "beta" %}
Hier steht etwas ganz anderes
{% elsif projekt.name == "gamma" %}
Hier steht noch etwas ganz anderes
{% else %}
Hier steht default
{% endif %}

Sprache

Ist bei einem Kontakt die Sprache "Englisch" eingestellt, versendet der Textbaustein die englische Variante, sonst die deutsche.

{% if kontakt.sprache == "en" %}hereby I would like to suggest you the following property that might suit your search criterea:{% else %}hiermit möchte ich Ihnen entsprechend Ihrer Suchkriterien eine neue Immobilie vorschlagen:{% endif %}

War diese Antwort hilfreich für dich?