# Kompiliertes Template in Datei schreiben

**URL:** <https://forum.shopware.com/t/kompiliertes-template-in-datei-schreiben/17430>\
**Category:** Shopware 3.5\
**Tags:** programming\
**Created:** [21. Dezember 2013 um 21:19 UTC](https://forum.shopware.com/t/kompiliertes-template-in-datei-schreiben/17430 "2013-12-21T21:19:04Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![MrNobody](https://avatars.discourse-cdn.com/v4/letter/m/9d8465/32.png) [@MrNobody](https://forum.shopware.com/u/MrNobody)\
**Post date:** [21. Dezember 2013 um 21:19 UTC](https://forum.shopware.com/t/kompiliertes-template-in-datei-schreiben/17430/1 "2013-12-21T21:19:04Z")

</div>

Hallo! Ich möchte, wie der Titel schon sagt, ein kompiliertes Template in eine Datei schreiben. Dazu ist ja die fetch() Methode von smarty gedacht, nur leider funktioniert diese nicht, meine $output Variable bleibt leer. Hier ein kleiner Codeausschnitt. Gehe ich in der Annahme richtig, dass $view ein smarty-Objekt ist? Was mache ich falsch? ` public function onPostDispatchFrontend(Enlight\_Event\_EventArgs $arguments) { $controller = $arguments-\>getSubject(); $view = $controller-\>View(); $view-\>addTemplateDir($this-\>Path().'Views/'); $view-\>extendsTemplate('pfad/detei.tpl'); $view-\>assign('var', 'wert'); $output = $view-\>fetch('pfad/detei.tpl'); } `

---

<div class="post-metadata">

**Author:** ![MrNobody](https://avatars.discourse-cdn.com/v4/letter/m/9d8465/32.png) [@MrNobody](https://forum.shopware.com/u/MrNobody)\
**Post date:** [21. Dezember 2013 um 21:29 UTC](https://forum.shopware.com/t/kompiliertes-template-in-datei-schreiben/17430/2 "2013-12-21T21:29:10Z")

</div>

Offensichtlich liegt es am Pfad, den ich der fetch() Methode mitgebe, denn mit einem absoluten Pfad zu einer Testdatei hat es funktioniert: `$view-\>fetch('file:D:/test.tpl');` Offensichtlich benötigt die Methode also nicht den gleichen Parameter, wie extendsTemplate(). Hat jemand nen Tipp?

---

<div class="post-metadata">

**Author:** ![artelier](https://avatars.discourse-cdn.com/v4/letter/a/e9c0ed/32.png) [@artelier](https://forum.shopware.com/u/artelier)\
**Post date:** [21. Dezember 2013 um 23:33 UTC](https://forum.shopware.com/t/kompiliertes-template-in-datei-schreiben/17430/3 "2013-12-21T23:33:13Z")

</div>

Oder deine Datei heißt datei.tpl und nicht detei.tpl? Sent from my iPad using [Tapatalk](http://tapatalk.com/m?id=1)

---

<div class="post-metadata">

**Author:** ![MrNobody](https://avatars.discourse-cdn.com/v4/letter/m/9d8465/32.png) [@MrNobody](https://forum.shopware.com/u/MrNobody)\
**Post date:** [22. Dezember 2013 um 01:02 UTC](https://forum.shopware.com/t/kompiliertes-template-in-datei-schreiben/17430/4 "2013-12-22T01:02:44Z")

</div>

Da habe ich mich vertippt, im Code heißen die Dateien ohnehin alle anders. Ich habe das Problem allerdings gerade selbst gelöst, der Inhalt der .tpl Datei war in einem {block}{/block} Tag. Offensichtlich gibt er diesen so nicht über die fetch() Methode raus.
