Hallo zusammen,
wer kann mir helfen? Ich möchte in der Bestellbestätigung „EUR“ anstatt des €-Symbols anzeigen lassen.
Wie müsste ich das ändern? {{ order.price.positionPrice|currency(currencyIsoCode) }}
Ich dachte (currencyIsoCode) gäbe EUR aus, es ergibt aber wohl das €-Symbol. In den Währungseinstellungen ist beides korrekt gesetzt.
currency dürfte ein Twig-Filter von Shopware sein. Ob der anpassbar ist, müsstest du im Quelltext nachsehen.
Mit Twig, siehe hier: format_currency - Filters - Documentation - Twig PHP
format_currency('EUR', locale: 'de')
Danke dir.
Ich hab mal verschiedene Twig-Änderungen probiert, z.B. {{ order.price.positionPrice|format_currency('EUR', locale: 'de') }}
- der Betrag wird trotzdem immer mit € ausgegeben.
In der Bestellbestätigung heißt es am Anfang {% set currencyIsoCode = order.currency.isoCode %}
Gebe ich {{ order.currency.isoCode }}
aus, ist es „EUR“ was er hierfür angezeigt. Also müsste es eigentlich ja passen.
Aber beim Shopware-Standard-Code {{ order.price.positionPrice|currency(currencyIsoCode) }}
kommt (trotz currencyIsoCode = order.currency.isoCode) nur das €-Symbol raus.
Auch
{{ order.price.positionPrice|currency(order.currency.isoCode) }}
bringt leider nur ein Ergebnis mit €-Symbol.
Oh, ich habe es falsch rum gelesen. Der Befehl war für das € Symbol.
Passt das ggf.? currency_name - Filters - Documentation - Twig PHP
Also {{ order.price.positionPrice|currency_name('EUR') }}
oder auch {{ order.price.positionPrice|currency_name }}
bringt als Ausgabe dann eine Zahl ohne €-Symbol oder EUR-Text, mit „.“ als Trennzeichen, also 82.74 statt 82,74.
Am erfolgreichsten war ich mit dem Versuch {{ order.price.positionPrice|number_format(2, ',', '.') }} EUR
- das formatiert den Betrag mit " , " oder " . " (ab 1000) und fügt den EUR-Schriftzug manuell an den Betrag an.
Ich stehe auf dem Schlauch, was genau meinst du mit replace getestet??
Gerade noch {{ order.price.positionPrice|currency(currency_name, 'EUR') }}
und {{ order.price.positionPrice|currency(currency_name) }}
getestet, ergab jeweils auch wieder Betrag mit " . " und ohne € oder EUR.
Moin,
ich denke er meint diesen Filter: replace - Filters - Documentation - Twig PHP
|replace(‚€‘:'EUR‘)
Grüße
Matthias
2 „Gefällt mir“
Das hatte ich leider nicht kapiert, aber es ist tatsächlich die Lösung!
|replace({'€': 'EUR'}) }}
nach |currency(currencyIsoCode)
- also im Beispiel komplett:
{{ order.price.positionPrice|currency(currencyIsoCode)|replace({'€': 'EUR'}) }}
funktioniert, gibt den Betrag mit " , " aus und ersetzt das €-Symbol durch EUR.
Danke!!
1 „Gefällt mir“