# Smarty Variable in Freitextfeld benutzen

**URL:** <https://forum.shopware.com/t/smarty-variable-in-freitextfeld-benutzen/50174>\
**Category:** Programmierung\
**Created:** [28. Dezember 2017 um 10:15 UTC](https://forum.shopware.com/t/smarty-variable-in-freitextfeld-benutzen/50174 "2017-12-28T10:15:29Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![Netzhirsch](https://avatars.discourse-cdn.com/v4/letter/n/3d9bf3/32.png) [@Netzhirsch](https://forum.shopware.com/u/Netzhirsch)\
**Post date:** [28. Dezember 2017 um 10:15 UTC](https://forum.shopware.com/t/smarty-variable-in-freitextfeld-benutzen/50174/1 "2017-12-28T10:15:29Z")

</div>

Hey Leute,

leider finde ich hier im Forum keine entsprechende Antwort. Ich versuche in einem Freitextfeld eines Produktes ein anderes Freitextfeld auszugeben. Hintergrund ist, dass ich x Freitextfelder habe, die ich zur Filterung und Sortierung nutze. In einem weiteren Freitextfeld möchte ich nun all diese Freitextfelder ausgeben lassen.

Ich befülle also mein Freitextfeld mit dem Namen “attr11” mit z.B. diesem Inhalt:

```
{$sArticle.attr1}{$sArticle.attr2}{$sArticle.attr3}

```

Schön wäre es, wenn dann bei Ausgabe des Freitextfeld attr11 die Inhalt der anderen Freitextfelder ausgegeben werden. Ist das irgendwie machbar?

Vielen Dank für eure Hilfe.

---

<div class="post-metadata">

**Author:** ![NextMike](https://avatars.discourse-cdn.com/v4/letter/n/838e76/32.png) [@NextMike](https://forum.shopware.com/u/NextMike)\
**Post date:** [28. Dezember 2017 um 12:31 UTC](https://forum.shopware.com/t/smarty-variable-in-freitextfeld-benutzen/50174/2 "2017-12-28T12:31:34Z")

</div>

Wo möchtest Du die Felder ausgeben? Und warum nicht einzeln?

---

<div class="post-metadata">

**Author:** ![Netzhirsch](https://avatars.discourse-cdn.com/v4/letter/n/3d9bf3/32.png) [@Netzhirsch](https://forum.shopware.com/u/Netzhirsch)\
**Post date:** [28. Dezember 2017 um 12:38 UTC](https://forum.shopware.com/t/smarty-variable-in-freitextfeld-benutzen/50174/3 "2017-12-28T12:38:48Z")

</div>

Die Ausgabe soll einfach im Template erfolgen. In der Detail.tpl z.B. Dort möchte ich jedoch attr11 ausgeben und eben nicht attr1,2 und 3. Es hat verschiedene Gründe, vor allem aber wegen einer Plugin-Kompatibilität.&nbsp;

---

<div class="post-metadata">

**Author:** ![NextMike](https://avatars.discourse-cdn.com/v4/letter/n/838e76/32.png) [@NextMike](https://forum.shopware.com/u/NextMike)\
**Post date:** [28. Dezember 2017 um 12:51 UTC](https://forum.shopware.com/t/smarty-variable-in-freitextfeld-benutzen/50174/4 "2017-12-28T12:51:24Z")

</div>

Und welche Probleme hast Du bei der Umsetzung?

---

<div class="post-metadata">

**Author:** ![waldicom](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/waldicom/32/12881_2.png) [@waldicom](https://forum.shopware.com/u/waldicom)\
**Post date:** [28. Dezember 2017 um 13:05 UTC](https://forum.shopware.com/t/smarty-variable-in-freitextfeld-benutzen/50174/5 "2017-12-28T13:05:56Z")

</div>

@[nnwebdesign](https://forum.shopware.com/profile/19271/nnwebdesign)&nbsp;Man kann zwar mit&nbsp;&nbsp;{eval $sArticle.attr11}; das erreichen, was du möchtest. Aber es ist audrücklich(!!!)nicht empfohlen.&nbsp;

---

<div class="post-metadata">

**Author:** ![Netzhirsch](https://avatars.discourse-cdn.com/v4/letter/n/3d9bf3/32.png) [@Netzhirsch](https://forum.shopware.com/u/Netzhirsch)\
**Post date:** [28. Dezember 2017 um 16:13 UTC](https://forum.shopware.com/t/smarty-variable-in-freitextfeld-benutzen/50174/6 "2017-12-28T16:13:36Z")

</div>

leider funktioniert dies nicht. Ich trage nun in Freitextfeld 11 {eval $sArticle.attr1} {eval $sArticle.attr2} ein, jedoch wird dies genau so wieder im Frontend ausgegeben.

---

<div class="post-metadata">

**Author:** ![waldicom](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/waldicom/32/12881_2.png) [@waldicom](https://forum.shopware.com/u/waldicom)\
**Post date:** [28. Dezember 2017 um 16:32 UTC](https://forum.shopware.com/t/smarty-variable-in-freitextfeld-benutzen/50174/7 "2017-12-28T16:32:25Z")

</div>

Nein, das muss im Template stehen, nicht im Backend (denn irgendwo im Template muss Du ja attr1 ausgeben).&nbsp;Aber nochmal: damit machst Du ein Sicherheitsloch in deinem Shop.

---

<div class="post-metadata">

**Author:** ![Netzhirsch](https://avatars.discourse-cdn.com/v4/letter/n/3d9bf3/32.png) [@Netzhirsch](https://forum.shopware.com/u/Netzhirsch)\
**Post date:** [28. Dezember 2017 um 16:35 UTC](https://forum.shopware.com/t/smarty-variable-in-freitextfeld-benutzen/50174/8 "2017-12-28T16:35:42Z")

</div>

In diesem Moment habe ich es getestet und auch festgestellt. Vielen Dank für die Hilfe - damit kann ich mein Vorhaben umsetzen.

---

<div class="post-metadata">

**Author:** ![sonic](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/sonic/32/25728_2.png) [@sonic](https://forum.shopware.com/u/sonic)\
**Post date:** [29. Dezember 2017 um 11:07 UTC](https://forum.shopware.com/t/smarty-variable-in-freitextfeld-benutzen/50174/9 "2017-12-29T11:07:24Z")

</div>

„Shopware“ jagt Textfragmente ja auch gesondert durch den Smarty-Parser. Auch wenn es mit **val** wohl geht, versuch es doch auch mal dieser Variante:  
{include file=„string:$sArticle.attr1“}&nbsp;{include file=„string:$sArticle.attr2“}

---

<div class="post-metadata">

**Author:** ![Netzhirsch](https://avatars.discourse-cdn.com/v4/letter/n/3d9bf3/32.png) [@Netzhirsch](https://forum.shopware.com/u/Netzhirsch)\
**Post date:** [29. Dezember 2017 um 13:10 UTC](https://forum.shopware.com/t/smarty-variable-in-freitextfeld-benutzen/50174/10 "2017-12-29T13:10:53Z")

</div>

Das funktioniert nicht - oder ich verstehe es nicht. Ich muss wohl noch konkreter werden:

Freitextfeld attr1:

```
Ich bin ein Beispieltext.

```

Freitextfeld attr2:

```
Ich bin ein weiterer Text.

```

Freitextfeld attr3:

```
{$sArticle.attr1} {$sArticle.attr2}

```

In der details.tpl steht nun

```
{eval $sArticle.attr3}

```

An welcher Stelle soll ich also nun dein include einsetzen?

---

<div class="post-metadata">

**Author:** ![sonic](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/sonic/32/25728_2.png) [@sonic](https://forum.shopware.com/u/sonic)\
**Post date:** [29. Dezember 2017 um 16:24 UTC](https://forum.shopware.com/t/smarty-variable-in-freitextfeld-benutzen/50174/11 "2017-12-29T16:24:32Z")

</div>

detail.tpl nicht „eval“ sondern:  
&nbsp;{include file=„string:$sArticle.attr3“}  
„string“ jagt $sArticle.attr3 durch den smarty-Parser. Dieser legt im Template-cache dann eine Datei mit dem endgültigen Inhalt ab - der&nbsp;Dateiname ist ein Hash aus dem Inhalt vom Text. Der Dateiname wird auch an das include zurückgegeben und die Datei dann includet. Sofern also $sArticle.attr1 und&nbsp;$sArticle.attr2 existieren, sollten sie eingefügt werden… sollten
