# Bootstrap Variablen im eigenen Theme überschreiben

**URL:** https://forum.shopware.com/t/bootstrap-variablen-im-eigenen-theme-uberschreiben/63195
**Category:** Themes & Design
**Created:** [26. November 2019 um 14:58 UTC](https://forum.shopware.com/t/bootstrap-variablen-im-eigenen-theme-uberschreiben/63195 "2019-11-26T14:58:28Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![staggattack](https://avatars.discourse-cdn.com/v4/letter/s/439d5e/32.png) [@staggattack](https://forum.shopware.com/u/staggattack)
#### Post date: [26. November 2019 um 14:58 UTC](https://forum.shopware.com/t/bootstrap-variablen-im-eigenen-theme-uberschreiben/63195/1 "2019-11-26T14:58:28Z")

</div>

Wie kann ich die allgemeinen Bootstrap Variablen in meinem Theme überschreiben?

In der variables.scss meines Theme-Plugins habe ich unter anderem versucht, das Grid und den Container anzupassen:

```
$grid-gutter-width: 20px;

$container-max-widths: (
  sm: 540px,
  md: 720px,
  lg: 960px,
  xl: 1100px <====
)

```

Leider greifen meine Änderungen nach dem storefront:dev&nbsp;nicht. Andere Variablen lassen sich in dieser Datei jedoch problemlos überschreiben, wie z.B. die $sw-color-brand-primary

Mir ist aufgefallen, dass in der&nbsp;platform/src/Storefront/Resources/app/storefront/src/scss/layout/\_container.scss die Container Breite festgeschrieben ist:

```
.container {
    max-width: 1400px;
}

```

Wenn ich versuche diesen Wert in meinen Theme-scss Dateien zu überschreiben, geht das nur mit einem !important:

```
.container {
    max-width: 1300px!important;
}

```

Warum werden die Styles meines eigenen Themes nicht priorisiert und wie kann ich die Variable $grid-gutter-width überschreiben?

---

<div class="post-metadata">

### Author: ![ural](https://avatars.discourse-cdn.com/v4/letter/u/b5e925/32.png) [@ural](https://forum.shopware.com/u/ural)
#### Post date: [8. Dezember 2019 um 06:32 UTC](https://forum.shopware.com/t/bootstrap-variablen-im-eigenen-theme-uberschreiben/63195/2 "2019-12-08T06:32:32Z")

</div>

- push

Das gleiche Problem habe ich auch.&nbsp;

Bootstrap Variablen lassen sich nicht übberschreiben.:

Allerdings funktioniert das Überschreiben des Containers auch ohne important.  
{ThemePlugin}\src\Resources\app\storefront\src\scss\layout\_container.scss -\> hier habe ich das auch eingetragen

---

<div class="post-metadata">

### Author: ![Shopwareianer](https://avatars.discourse-cdn.com/v4/letter/s/b4bc9f/32.png) [@Shopwareianer](https://forum.shopware.com/u/Shopwareianer)
#### Post date: [8. Dezember 2019 um 09:26 UTC](https://forum.shopware.com/t/bootstrap-variablen-im-eigenen-theme-uberschreiben/63195/3 "2019-12-08T09:26:26Z")

</div>

Ich glaube hier wurde auch immer noch nicht nach Wochen und Monaten von Shopware her gesagt, wie jetzt genau der ganze Frontend Scss Override / what ever Prozess funktioniert mit den Variablen, Überschreibung des Core Themes usw.

Die Frage wurde schon dutzende Male hier im Forum an Shopware gestellt und wurde soweit ich das mitbekommen habe bisher ignoriert.

[@Moritz Naczenski]([http://forum.shopware.com/profile/14574/Moritz](http://forum.shopware.com/profile/14574/Moritz) Naczenski „Moritz Naczenski“)‍ Gibt es hierzu mittlerweile ein best-practise wie genau das ganze sauber funktioieren soll / was der Weg ist für die Frotend Kompilierung & Überschreibung der Themes?

---

<div class="post-metadata">

### Author: ![staggattack](https://avatars.discourse-cdn.com/v4/letter/s/439d5e/32.png) [@staggattack](https://forum.shopware.com/u/staggattack)
#### Post date: [9. Dezember 2019 um 08:22 UTC](https://forum.shopware.com/t/bootstrap-variablen-im-eigenen-theme-uberschreiben/63195/4 "2019-12-09T08:22:22Z")

</div>

> [@ural schrieb:](https://forum.shopware.com/profile/26578/ural "ural")
> 
> … Allerdings funktioniert das Überschreiben des Containers auch ohne important.  
> {ThemePlugin}\src\Resources\app\storefront\src\scss\layout\_container.scss -\> hier habe ich das auch eingetragen

Danke für die Antwort.

Stimmt das klappt, war mein Fehler, da ich mit der Reihenfolge in der&nbsp;theme.json rumgespielt habe. Das bringt aber nichts wie ich gemerkt habe:

Die Variablen sind im Bootstrap-Code mit !default versehen, also als Fallback für den Fall, dass dieser Variable noch kein Wert zugewiesen wurde. Das heißt, die eigenen Variablen werden richtigerweise vor dem Bootstrap-Code inkludiert. Dies tut Shopware auch, indem die variables.scss des Shopware-Skins vor Bootstrap&nbsp;in der base.scss importiert wird. In der \_bootstrap.scss werden den&nbsp;wichtigsten Bootstrap-Variablen die $sw-prefix-Variablen&nbsp;zugewiesen (z.B. $primary: $sw-color-brand-primary;). Dort wird unter anderem auch die&nbsp;$grid-gutter-width auf 40px gesetzt.

In der theme.scss des Shopware-Skins werden wiederum die $sw-prefix-Variablen mit !default versehen, damit&nbsp;die&nbsp;Werte genutzt werden, die im&nbsp;eigenen&nbsp;Custom&nbsp;Theme für die Shopware-Variablen bereits definiert wurden.

In der theme.json daher die&nbsp;Reihenfolge:

```
 "style": ["app/storefront/src/scss/variables.scss", "@Storefront", "app/storefront/src/scss/base.scss"] 

```

Verändert man diese Reihenfolge, lassen sich die $sw-Variablen nicht mehr überschreiben.

Man könnte&nbsp;Bootstrap auch in&nbsp;der eigenen base.scss noch einmal importieren, um die Variablen zu überschreiben. Dadurch geht aber das Shopware Theme teilweise kaputt.

Ich habe den Wert für $grid-gutter-width nun direkt im Shopware Theme angepasst.

Es wäre wohl sinnvoll, wenn seitens Shopware&nbsp;den&nbsp;meisten&nbsp;Bootstrap-Variablen (auch der&nbsp;$grid-gutter-width)&nbsp;$sw-Variablen zugewiesen werden.

---

<div class="post-metadata">

### Author: ![blueroger](https://avatars.discourse-cdn.com/v4/letter/b/df788c/32.png) [@blueroger](https://forum.shopware.com/u/blueroger)
#### Post date: [13. Dezember 2019 um 09:32 UTC](https://forum.shopware.com/t/bootstrap-variablen-im-eigenen-theme-uberschreiben/63195/5 "2019-12-13T09:32:48Z")

</div>

Hallo,

bei mir funktioniert das kompilieren von scss Datein im rc1 nicht mehr (php bin/console theme:compile). Das hat im ea2 funktioniert.

Auch das Überschreiben von Variablen tut nicht. Müssen die scss Datein explizit unter theme.json eingebunden&nbsp; werden?

Danke und gruß

---

<div class="post-metadata">

### Author: ![blueroger](https://avatars.discourse-cdn.com/v4/letter/b/df788c/32.png) [@blueroger](https://forum.shopware.com/u/blueroger)
#### Post date: [13. Dezember 2019 um 09:40 UTC](https://forum.shopware.com/t/bootstrap-variablen-im-eigenen-theme-uberschreiben/63195/6 "2019-12-13T09:40:21Z")

</div>

es funktioniert doch, ich hatte ein anderes Theme ausgewählt …
