# eMail Template mit else if Abfrage

**URL:** <https://forum.shopware.com/t/email-template-mit-else-if-abfrage/96897>\
**Category:** Shopware 6 (German)\
**Created:** [29. Oktober 2022 um 08:58 UTC](https://forum.shopware.com/t/email-template-mit-else-if-abfrage/96897 "2022-10-29T08:58:37Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![CHSB](https://avatars.discourse-cdn.com/v4/letter/c/b3f665/32.png) [@CHSB](https://forum.shopware.com/u/CHSB)\
**Post date:** [29. Oktober 2022 um 08:58 UTC](https://forum.shopware.com/t/email-template-mit-else-if-abfrage/96897/1 "2022-10-29T08:58:37Z")

</div>

Ich würde gern in der Bestellbestätigung das Lieferdatum ausgeben, habe dazu folgenden Code eingebaut, damit wird allerdings keine Mail mehr versendet:

{% if nestedItem.payload.releaseDate|format\_date \< order.orderDateTime|format\_date %} {{ nestedItem.payload.releaseDate|format\_date }} {% else %} {% if nestedItem.payload.releaseDate|format\_date \> order.orderDateTime|format\_date %} {{ order.deliveries.at(0).shippingDateEarliest }} {% endif %}

Funktionieren diese Else If Abfragen dort nicht? Ohne else, die jeweiligen Abschnitte also alleine, gehts.

---

<div class="post-metadata">

**Author:** ![CHSB](https://avatars.discourse-cdn.com/v4/letter/c/b3f665/32.png) [@CHSB](https://forum.shopware.com/u/CHSB)\
**Post date:** [29. Oktober 2022 um 08:59 UTC](https://forum.shopware.com/t/email-template-mit-else-if-abfrage/96897/2 "2022-10-29T08:59:44Z")

</div>

Hier des Teil des Abschnitts:

```
                <div{% if nestingLevel > 0 %} style="padding-left: {{ (nestingLevel + 1) * 10 }}px"{% endif %}>
                    {{ nestedItem.label|u.wordwrap(80) }}<br><br><span style="color:green;">voraussichtlicher Liefertermin: {% if nestedItem.payload.releaseDate|format_date < order.orderDateTime|format_date %} {{ nestedItem.payload.releaseDate|format_date }} {% else %} {% if nestedItem.payload.releaseDate|format_date > order.orderDateTime|format_date %} {{ order.deliveries.at(0).shippingDateEarliest }} {% endif %} </span>
                </div>

```

---

<div class="post-metadata">

**Author:** ![Max\_Shop](https://avatars.discourse-cdn.com/v4/letter/m/58f4c7/32.png) [@Max\_Shop](https://forum.shopware.com/u/Max_Shop)\
**Post date:** [29. Oktober 2022 um 10:25 UTC](https://forum.shopware.com/t/email-template-mit-else-if-abfrage/96897/3 "2022-10-29T10:25:01Z")

</div>

> [@CHSB](#):
>
> `{% else %} {% if nestedItem.payload.releaseDate|format_date > order.orderDateTime|format_date %} {{ order.deliveries.at(0).shippingDateEarliest }} {% endif %} </span>`

Das schließende {% endif %} nach dem else fehlt.

---

<div class="post-metadata">

**Author:** ![CHSB](https://avatars.discourse-cdn.com/v4/letter/c/b3f665/32.png) [@CHSB](https://forum.shopware.com/u/CHSB)\
**Post date:** [31. Oktober 2022 um 10:37 UTC](https://forum.shopware.com/t/email-template-mit-else-if-abfrage/96897/4 "2022-10-31T10:37:02Z")

</div>

> [@CHSB](#):
>
> `.wordwrap(80) }}<br><br><span style="color:green;">voraussichtlicher Liefertermin: {% if nestedItem.payload.releaseDate|format_date < order.orderDateTime|format_date %} {{ nestedItem.payload.releaseDate|format_date }} {% else %} {% if nestedItem.payload.releaseDate|format_date > order.orderDateTime|format_date %} {{ order.deliveries.at(0).shippingDateEarliest }} {% endif %} </span>`

Hallo Max, aber das fehlt doch nicht, oder bin ich grad blind?

---

<div class="post-metadata">

**Author:** ![Max\_Shop](https://avatars.discourse-cdn.com/v4/letter/m/58f4c7/32.png) [@Max\_Shop](https://forum.shopware.com/u/Max_Shop)\
**Post date:** [31. Oktober 2022 um 10:49 UTC](https://forum.shopware.com/t/email-template-mit-else-if-abfrage/96897/5 "2022-10-31T10:49:35Z")

</div>

Auf wie viele if kommst du denn, wenn du den Code zählst?  
Auf wie viele endif kommst du denn, wenn du den Code zählst?

---

<div class="post-metadata">

**Author:** ![abdullah](https://avatars.discourse-cdn.com/v4/letter/a/aeb1de/32.png) [@abdullah](https://forum.shopware.com/u/abdullah)\
**Post date:** [31. Oktober 2022 um 11:49 UTC](https://forum.shopware.com/t/email-template-mit-else-if-abfrage/96897/6 "2022-10-31T11:49:21Z")

</div>

wie @Max_Shop erwähnt hat fehlt das schließende endif-Block oder du machst aus `{% else %} {% if ...` ein `{% elseif ...` dann sollte es ebenfalls funktionieren.

---

<div class="post-metadata">

**Author:** ![CHSB](https://avatars.discourse-cdn.com/v4/letter/c/b3f665/32.png) [@CHSB](https://forum.shopware.com/u/CHSB)\
**Post date:** [31. Oktober 2022 um 13:29 UTC](https://forum.shopware.com/t/email-template-mit-else-if-abfrage/96897/7 "2022-10-31T13:29:21Z")

</div>

Bedeutet am Ende müssen zwei endif hin? Kannte das bisher so nicht, elseif hatte aber nicht funktioniert.

---

<div class="post-metadata">

**Author:** ![Max\_Shop](https://avatars.discourse-cdn.com/v4/letter/m/58f4c7/32.png) [@Max\_Shop](https://forum.shopware.com/u/Max_Shop)\
**Post date:** [31. Oktober 2022 um 14:42 UTC](https://forum.shopware.com/t/email-template-mit-else-if-abfrage/96897/8 "2022-10-31T14:42:22Z")

</div>

Jedes geöffnete if muss mit einem schließenden endif enden. Das ist twig Standard.

---

<div class="post-metadata">

**Author:** ![CHSB](https://avatars.discourse-cdn.com/v4/letter/c/b3f665/32.png) [@CHSB](https://forum.shopware.com/u/CHSB)\
**Post date:** [1. November 2022 um 17:22 UTC](https://forum.shopware.com/t/email-template-mit-else-if-abfrage/96897/9 "2022-11-01T17:22:02Z")

</div>

Folgender Code funktioniert, die email wird versendet:

{% if nestedItem.payload.releaseDate|date(‚Y-m-d‘) \> „now“|date(‚Y-m-d‘) %} {{ nestedItem.payload.releaseDate|format\_date }} {% else %} heute {% endif %}

Setze ich aber die Variable für das Lieferdatum statt fest „heute“ ein, geht es nicht:

{% if nestedItem.payload.releaseDate|date(‚Y-m-d‘) \> „now“|date(‚Y-m-d‘) %} {{ nestedItem.payload.releaseDate|format\_date }} {% else %} {{ order.deliveries.at(0).shippingDateEarliest }} {% endif %}

Könnte mir das vielleicht jemand erklären?
