# Subshop- / Multishop-Fähigkeit LESS Style-Felder wie etwa color

**URL:** <https://forum.shopware.com/t/subshop-multishop-fahigkeit-less-style-felder-wie-etwa-color/34329>\
**Category:** Plugins\
**Tags:** drittanbieter-plugin\
**Created:** [8. Februar 2016 um 22:40 UTC](https://forum.shopware.com/t/subshop-multishop-fahigkeit-less-style-felder-wie-etwa-color/34329 "2016-02-08T22:40:41Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![zenit](https://avatars.discourse-cdn.com/v4/letter/z/a87d85/32.png) [@zenit](https://forum.shopware.com/u/zenit)\
**Post date:** [8. Februar 2016 um 22:40 UTC](https://forum.shopware.com/t/subshop-multishop-fahigkeit-less-style-felder-wie-etwa-color/34329/1 "2016-02-08T22:40:41Z")

</div>

Hallo,

was muss man machen, damit Werte, welche von der Bootstrap-Datei an eine LESS-Datei innerhalb eines Plugins übergeben wird auch Subshop- und Multishop-fähig ist?

Beispiel: Man möchte je Subshop / Multishop eine andere Farbe im Frontend für das Plugin einstellen:

```
$form->setElement('color', 'textColor',
            [
                'scope' => Shopware\Models\Config\Element::SCOPE_SHOP,
                'value' => '#ffffff',
                'label' => 'Textfarbe',
                'description' => '...'
            ]
);

```

Das Problem scheint ja zu sein, dass die LESS-Datei kompliliert wird und beispielsweise für DE und EN keine getrennten existieren. Wie ist hierbei das Vorgehen?

&nbsp;

Vielen Dank für eure Hilfe!

&nbsp;

---

<div class="post-metadata">

**Author:** ![zenit](https://avatars.discourse-cdn.com/v4/letter/z/a87d85/32.png) [@zenit](https://forum.shopware.com/u/zenit)\
**Post date:** [10. Februar 2016 um 09:01 UTC](https://forum.shopware.com/t/subshop-multishop-fahigkeit-less-style-felder-wie-etwa-color/34329/2 "2016-02-10T09:01:47Z")

</div>

Wenn man das Subshop-Lizenz Plugin von Shopware abschaltet, werden z.B.: Farben des Plugins korrekt übertragen.  
Bsp.: Shop 1 = rot; Shop 2 = grün

Bei aktiviertem Subshop-Lizenz Plugin bekommt Shop 2 auch rot. Wie kann das sein?

Wie geht man vor, um Plugin-Konfigurationen, welche das Aussehen betreffen, für Subshops konfigurierbar zu machen?

---

<div class="post-metadata">

**Author:** ![zenit](https://avatars.discourse-cdn.com/v4/letter/z/a87d85/32.png) [@zenit](https://forum.shopware.com/u/zenit)\
**Post date:** [11. Februar 2016 um 07:33 UTC](https://forum.shopware.com/t/subshop-multishop-fahigkeit-less-style-felder-wie-etwa-color/34329/3 "2016-02-11T07:33:52Z")

</div>

Kann bei der Menge an Plugins doch nicht sein, dass keiner weiß, wie man ein Plugin komplett Subshop-Fähig macht? ![blush](http://forum.shopware.com/plugins/CKEditor/plugins/smiley/images/grin.png "blush")

Die Code Zeile

```
'scope' => Shopware\Models\Config\Element::SCOPE_SHOP,

```

steht ja auch in der Doku. Aber warum funktioniert es nicht bei den Styles? Oder sollte das eigentlich funktionieren?

---

<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:** [11. Februar 2016 um 07:50 UTC](https://forum.shopware.com/t/subshop-multishop-fahigkeit-less-style-felder-wie-etwa-color/34329/4 "2016-02-11T07:50:15Z")

</div>

Wie wertest du denn das Ergebnis im Theme/LESS aus?

---

<div class="post-metadata">

**Author:** ![zenit](https://avatars.discourse-cdn.com/v4/letter/z/a87d85/32.png) [@zenit](https://forum.shopware.com/u/zenit)\
**Post date:** [11. Februar 2016 um 07:55 UTC](https://forum.shopware.com/t/subshop-multishop-fahigkeit-less-style-felder-wie-etwa-color/34329/5 "2016-02-11T07:55:25Z")

</div>

Ich schaue mir die CSS-Datei an und auch direkt die Elemente mit den Entwicklerwerkzeugen.

---

<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:** [11. Februar 2016 um 08:05 UTC](https://forum.shopware.com/t/subshop-multishop-fahigkeit-less-style-felder-wie-etwa-color/34329/6 "2016-02-11T08:05:34Z")

</div>

Ich meine wie holst du deine Variablen ab, technisch, im Plugin/View

---

<div class="post-metadata">

**Author:** ![zenit](https://avatars.discourse-cdn.com/v4/letter/z/a87d85/32.png) [@zenit](https://forum.shopware.com/u/zenit)\
**Post date:** [11. Februar 2016 um 08:54 UTC](https://forum.shopware.com/t/subshop-multishop-fahigkeit-less-style-felder-wie-etwa-color/34329/7 "2016-02-11T08:54:57Z")

</div>

&nbsp;Rufe diese Funktion auf

```
    /**
     * @return \Shopware\Components\Theme\LessDefinition
     */
    public function addLessFiles(Enlight_Event_EventArgs $args)
    {
        $less = new \Shopware\Components\Theme\LessDefinition(
        //configuration
            array(
                'beispiel-color' => $this->Config()->get('beispielColor')
            ),
            //less files to compile
            array(
                __DIR__. '/Views/frontend/_public/src/less/all.less'
            ),
            //import directory
            __DIR__
        );
        return new Doctrine\Common\Collections\ArrayCollection(array($less));
    }

```

&nbsp;

---

<div class="post-metadata">

**Author:** ![simkli](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/simkli/32/13124_2.png) [@simkli](https://forum.shopware.com/u/simkli)\
**Post date:** [11. Februar 2016 um 09:55 UTC](https://forum.shopware.com/t/subshop-multishop-fahigkeit-less-style-felder-wie-etwa-color/34329/8 "2016-02-11T09:55:39Z")

</div>

Hallo zenit,

naja im Frontend wird mit $this-\>Config() anhand des aufgerufenen Shops die richtige Konfiguration ermittelt. Das Event “Theme\_Compiler\_Collect\_Plugin\_Less”&nbsp;wird jedoch aufgerufen wenn der Nutzer im **Backend** &nbsp;das Theme kompiliert. Die Standard Routine kann nicht ermitteln für welchen Shop die Konfiguration geladen werden soll. ( Natürlich wird&nbsp;&nbsp;das Event für jeden Shop einzeln aufgerufen, aber die Ermittlung um welchen Shop es sich handelt läuft leider etwas anders ab. =\> funktioniert nur im Frontend )

So viel dazu warum dein Code nicht funktioniert. Nun zur Lösung&nbsp; ![crying](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/1X/ac0c93e2160fb9e91c30767775d64444ad0f06c4.png "crying")

Die Argumente im Collect\_Plugin\_Less-Event enthalten unter anderem den Shop. Und schon fehlt nicht mehr viel um die richtige Konfiguration zu laden:

```
public function addLessFiles(Enlight_Event_EventArgs $args)
{
    $shop = $args->getShop();
    $config = $this->collection->getConfig($this->name,$shop);
    
    $less = new \Shopware\Components\Theme\LessDefinition(
        array(
            'beispiel-color' => $config->get('beispiel-color');
        ),
        array( __DIR__. '/Views/frontend/_public/src/less/all.less'),
        __DIR__
    );
    return new Doctrine\Common\Collections\ArrayCollection(array($less));
}

```

Den Code habe ich zwar jetzt nicht getestet&nbsp;sollte aber funktionieren.

Viele Grüße

---

<div class="post-metadata">

**Author:** ![zenit](https://avatars.discourse-cdn.com/v4/letter/z/a87d85/32.png) [@zenit](https://forum.shopware.com/u/zenit)\
**Post date:** [11. Februar 2016 um 10:22 UTC](https://forum.shopware.com/t/subshop-multishop-fahigkeit-less-style-felder-wie-etwa-color/34329/9 "2016-02-11T10:22:52Z")

</div>

Vielen Dank, ich werde das testen und eine Rückmeldung geben! ![no](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/1X/7fcda44f782696668a3d093569d15e88105769e1.png "no")

(Kann man im neuen Forum eigentlich noch “Danke” abgeben?)

&nbsp;

EDIT: “Danke” kann man nun wieder abgeben - dann solls das für die Antwort auch geben

Rückmeldung: Der Code scheint zu funktionieren ![Thumb-Up](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/1X/7fcda44f782696668a3d093569d15e88105769e1.png "Thumb-Up")

---

<div class="post-metadata">

**Author:** ![zenit](https://avatars.discourse-cdn.com/v4/letter/z/a87d85/32.png) [@zenit](https://forum.shopware.com/u/zenit)\
**Post date:** [18. Juni 2016 um 17:27 UTC](https://forum.shopware.com/t/subshop-multishop-fahigkeit-less-style-felder-wie-etwa-color/34329/10 "2016-06-18T17:27:16Z")

</div>

Hallo simkli,&nbsp;

habe leider doch noch eine Rückfrage zu dem Code… Er funktioniert nicht bei Sprachshops - also bei unterschiedlichen Einstellungen DE und EN wechselt beispielsweise keine Schriftfarbe, wenn dies zuvor eingestellt wurde. Liegt das daran, dass Sprachshops auch kein getrenntes Theme und damit keine eigene kompilierte LESS-Datei haben?

Funktioniert der Code dann bei Nicht-Sprachen-Subshops? Multishops?

VG, Zenit
