Textbausteine im String Compiler (bzw. Mailtemplates)

Hallöle,

ich habe letztens versucht Textbausteine in Mailstemplates zu verwenden. Hat leider nicht funktioniert. Ich habe dann ein bisschen recherchiert. Für das compilieren der Mailtemplates wird die Shopware_Components_StringCompiler Klasse verwendet. Smarty unterstützt verschiedene Ressourcen und hier wird wohl eine Ressource vom Type String compiliert. Andere Ressourcen darin sind wohl nicht zulässig?!? In Shopware sind die Textbausteine scheinbar auch als eigene Ressource implementiert?!? Ist das richtig? Und wenn ja, wieso? Wieso sind die nicht einfach normale modifier oder functions? Gibt es eine Möglichkeit doch irgendwie Textbausteine in Mailvorlagen oder allgemein im StringCompiler zu verwenden?

VG Arne

Hi Arne,

eine ähnliche Frage hatte ich auch schon mal gestellt, aber konnte dann nicht richtig erklären, warum ich das gefragt hatte :frowning: deswegen bin ich ab jetzt mal wieder ganz still :slight_smile:

https://forum.shopware.com/discussion/44241/textbausteine-nicht-in-produktexport-templates-verfuegbar

Happy selling,

Geert

Hat vielleicht jemand von SHopware ne Idee?

Hi,

du kannst den snippet-Modifier im Produktexport / Mail-Templates verwenden. Siehe:
 Shopware 5 snippet management

Gruß Heiner

Funktioniert leider nicht :frowning:

{""|snippet:"payinadvanceAccountDetails":"documents/components"}

Syntax Error e1" on line 16 "{""|snippet:"payinadvanceAccountDetails":"documents/components"}" unknown modifier "snippet"

Ich habe auch die Variante mit den Variablen aus der Doku probiert. Und auch single statt double quotes.

Mir würde nur einfallen, einen eigene Function/Modifier zu schreiben, der den Textbausteine irgendwie per

$this->container->get('snippets')->getNamespace('blabla')->get('meinBaustein');

zu holen.

Daran hatte ich auch schon gedacht. Ich dachte aber auch, dass es vielleicht einen Grund gibt (Performance?) wieso das so umständlich implementiert ist.