# Label bei Formularen anzeigen

**URL:** <https://forum.shopware.com/t/label-bei-formularen-anzeigen/72811>\
**Category:** Themes & Design\
**Created:** [16. Februar 2021 um 10:49 UTC](https://forum.shopware.com/t/label-bei-formularen-anzeigen/72811 "2021-02-16T10:49:40Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![PhilippNiehaus](https://avatars.discourse-cdn.com/v4/letter/p/85f322/32.png) [@PhilippNiehaus](https://forum.shopware.com/u/PhilippNiehaus)\
**Post date:** [16. Februar 2021 um 10:49 UTC](https://forum.shopware.com/t/label-bei-formularen-anzeigen/72811/1 "2021-02-16T10:49:40Z")

</div>

In Shopware 5 werden bei Formularen (z.B. Kontakt) keine Labels über den Feldern gezeigt, sondern das Feld wird über den Placeholder gekennzeichnet. Ich würde das gerne ändern und bin auf einen 5 Jahre alten Post gestoßen, in dem gesagt wurde, es gäbe keine Backend-Funktion, sondern man müsse das in den .tpl-Dateien anpassen:

[https://forum.shopware.com/discussion/32016/placeholder-statt-labels-bei-formularen](https://forum.shopware.com/discussion/32016/placeholder-statt-labels-bei-formularen)

Was mich jetzt irritiert ist, dass es im Theme Manager unter “Formulare” direkt oben als erstes eine Option zum stylen von Labels gibt. Wenn ich jetzt Label statt Placeholder anzeigen möchte: Wie mache ich das am geschicktesten? Ich habe mich schon durch das Git-Repository gekämpft und wüsste auch einfach nicht, wo ich die .tpl-Dateien für Formulare finde, die diese Änderung global allen Formularen hinzufügt.

**Shopware-Version: 5.6.9**

---

<div class="post-metadata">

**Author:** ![PhilippNiehaus](https://avatars.discourse-cdn.com/v4/letter/p/85f322/32.png) [@PhilippNiehaus](https://forum.shopware.com/u/PhilippNiehaus)\
**Post date:** [18. Februar 2021 um 11:20 UTC](https://forum.shopware.com/t/label-bei-formularen-anzeigen/72811/2 "2021-02-18T11:20:39Z")

</div>

Weiß niemand Rat? \*schnief\* Push

---

<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:** [18. Februar 2021 um 12:02 UTC](https://forum.shopware.com/t/label-bei-formularen-anzeigen/72811/3 "2021-02-18T12:02:18Z")

</div>

Tja scheinbar gibt es Styling für das label&nbsp;Element. Im Code gibt es aber keine Labels. Man müsste sie wohl erst einsetzen, da hat sich seit 5 Jahren nichts getan.

---

<div class="post-metadata">

**Author:** ![brettvormkopp](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/brettvormkopp/32/7788_2.png) [@brettvormkopp](https://forum.shopware.com/u/brettvormkopp)\
**Post date:** [18. Februar 2021 um 12:32 UTC](https://forum.shopware.com/t/label-bei-formularen-anzeigen/72811/4 "2021-02-18T12:32:13Z")

</div>

Man kann auf die Labels auch verzichten und ein Pseudo Element einhängen.&nbsp;

Grob würde das so aussehen beim Kontaktformular:

```
#support .forms--inner-form.panel--body div:nth-child(0n+1):before{content: "Erstes Feld";}
#support .forms--inner-form.panel--body div:nth-child(0n+2):before{content: "Zweites Feld";}
#support .forms--inner-form.panel--body div:nth-child(0n+3):before{content: "Drittes Feld";}
#support .forms--inner-form.panel--body div:nth-child(0n+4):before{content: "Viertes Feld";}
...

```

Da muss aber dann auch die Reihenfolge stimmen 😉 und man müsste noch die input.selects in der Weite anpassen

Einzige Alternative dazu wäre die Formulare im Template zu machen.

---

<div class="post-metadata">

**Author:** ![Moin](https://avatars.discourse-cdn.com/v4/letter/m/c89c15/32.png) [@Moin](https://forum.shopware.com/u/Moin)\
**Post date:** [18. Februar 2021 um 12:37 UTC](https://forum.shopware.com/t/label-bei-formularen-anzeigen/72811/5 "2021-02-18T12:37:21Z")

</div>

Gute Frage, wäre mal zu testen, wenn man dazu kommt.

---

<div class="post-metadata">

**Author:** ![PhilippNiehaus](https://avatars.discourse-cdn.com/v4/letter/p/85f322/32.png) [@PhilippNiehaus](https://forum.shopware.com/u/PhilippNiehaus)\
**Post date:** [18. Februar 2021 um 12:39 UTC](https://forum.shopware.com/t/label-bei-formularen-anzeigen/72811/6 "2021-02-18T12:39:40Z")

</div>

Super, vielen Dank! Die Idee mit den Pseudoelementen find ich schon ziemlich clever. Darauf wäre ich jetzt nicht gekommen 😃 Mal gucken, ob sich das umsetzen lässt.

@NextMike‍ Das Mysterium der Label-Optionen ist übrigens gelüftet. Das styled dann z.B. den Text von Checkboxen wie z.B. die Beschreibung der Datenschutz-Einwilligung.

---

<div class="post-metadata">

**Author:** ![brettvormkopp](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/brettvormkopp/32/7788_2.png) [@brettvormkopp](https://forum.shopware.com/u/brettvormkopp)\
**Post date:** [18. Februar 2021 um 12:46 UTC](https://forum.shopware.com/t/label-bei-formularen-anzeigen/72811/7 "2021-02-18T12:46:46Z")

</div>

Noch eine kleine Info warum das CSS so lang ist: Man kann an Input Felder selbst kein :before hängen, deswegen muss man die Eltern-Elemente nehmen. Und weil die Elternelemente aber alle keine ID haben nimmt man wiederum&nbsp;deren Elternelement und hangelt sich dann durch. Es funktioniert. Nur man muss etwas Geduld haben und Rumtesten

---

<div class="post-metadata">

**Author:** ![PhilippNiehaus](https://avatars.discourse-cdn.com/v4/letter/p/85f322/32.png) [@PhilippNiehaus](https://forum.shopware.com/u/PhilippNiehaus)\
**Post date:** [18. Februar 2021 um 14:41 UTC](https://forum.shopware.com/t/label-bei-formularen-anzeigen/72811/8 "2021-02-18T14:41:30Z")

</div>

Oh ha, das hab ich tatsächlich noch gar nicht machen müssen, daher besten Dank für den Tipp. Wahrscheinlich hätte ich mich nachher gewundert, warum das nicht funktioniert 😃

---

<div class="post-metadata">

**Author:** ![sschreier](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/sschreier/32/23296_2.png) [@sschreier](https://forum.shopware.com/u/sschreier)\
**Post date:** [18. Februar 2021 um 16:08 UTC](https://forum.shopware.com/t/label-bei-formularen-anzeigen/72811/9 "2021-02-18T16:08:17Z")

</div>

Hallo,

also ich würde einfach das Label&nbsp;des Feldes, das&nbsp;ja als Platzhalter (placeholder)&nbsp;verwendet wird (siehe:&nbsp;[https://github.com/shopware/shopware/blob/5.7/engine/Shopware/Controllers/Frontend/Forms.php#L312](https://github.com/shopware/shopware/blob/5.7/engine/Shopware/Controllers/Frontend/Forms.php#L312)&nbsp;) , vor diesem Shopware Block [https://github.com/shopware/shopware/blob/5.7/themes/Frontend/Bare/frontend/forms/form-elements.tpl#L12](https://github.com/shopware/shopware/blob/5.7/themes/Frontend/Bare/frontend/forms/form-elements.tpl#L12)&nbsp;noch als Label ausgeben lassen. Fertig.

Grüße

Sebastian

---

<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:** [18. Februar 2021 um 16:23 UTC](https://forum.shopware.com/t/label-bei-formularen-anzeigen/72811/10 "2021-02-18T16:23:37Z")

</div>

> [@sschreier schrieb:](https://forum.shopware.com/profile/18157/sschreier "sschreier")
> 
> Hallo,
> 
> also ich würde einfach das Label&nbsp;des Feldes, das&nbsp;ja als Platzhalter (placeholder)&nbsp;verwendet wird (siehe:&nbsp;[https://github.com/shopware/shopware/blob/5.7/engine/Shopware/Controllers/Frontend/Forms.php#L312](https://github.com/shopware/shopware/blob/5.7/engine/Shopware/Controllers/Frontend/Forms.php#L312)&nbsp;) , vor diesem Shopware Block [https://github.com/shopware/shopware/blob/5.7/themes/Frontend/Bare/frontend/forms/form-elements.tpl#L12](https://github.com/shopware/shopware/blob/5.7/themes/Frontend/Bare/frontend/forms/form-elements.tpl#L12)&nbsp;noch als Label ausgeben lassen. Fertig.
> 
> Grüße
> 
> Sebastian

so hätte ich das auch gemacht

---

<div class="post-metadata">

**Author:** ![PhilippNiehaus](https://avatars.discourse-cdn.com/v4/letter/p/85f322/32.png) [@PhilippNiehaus](https://forum.shopware.com/u/PhilippNiehaus)\
**Post date:** [22. Februar 2021 um 17:07 UTC](https://forum.shopware.com/t/label-bei-formularen-anzeigen/72811/11 "2021-02-22T17:07:34Z")

</div>

Japp, das hat genau so geklappt 🙂 Vielen Dank für die Hilfe!
