# all.less - Integration in einem Plugin funktioniert nicht \[geklärt\]

**URL:** <https://forum.shopware.com/t/all-less-integration-in-einem-plugin-funktioniert-nicht-geklart/42614>\
**Category:** Themes & Design\
**Created:** [6. Januar 2017 um 23:01 UTC](https://forum.shopware.com/t/all-less-integration-in-einem-plugin-funktioniert-nicht-geklart/42614 "2017-01-06T23:01:57Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![ModHoc](https://avatars.discourse-cdn.com/v4/letter/m/8e8cbc/32.png) [@ModHoc](https://forum.shopware.com/u/ModHoc)\
**Post date:** [6. Januar 2017 um 23:01 UTC](https://forum.shopware.com/t/all-less-integration-in-einem-plugin-funktioniert-nicht-geklart/42614/1 "2017-01-06T23:01:57Z")

</div>

Hallo zusammen,

ich habe ein Problem mit der Integration einer all.less Datei in einem Plugin. Das Plugin erweitert das CustomProductsV2-Plugin und arbeitet nach dem Beispiel im Blog auch einwandfrei.

Ich habe einen Frontend-Subscriber der auf den Event “Enlight\_Controller\_Action\_PreDispatch\_Frontend\_Detail” registriert und im Callback eine Funktion besitzt die über addTemplateDir() das Verzeichnis “/Resources/Views/” als Template-Verzeichnis hinzufügt.

Es gibt eine Testdatei “Resources/Views/frontend/detail/tabs.tpl” die einen neuen Tab auf der Artikeldetailseite hinzufügt. Sprich das Template-Verzeichnis funktioniert schon mal.

Jetzt habe ich mir gedacht, das ich einfach folgende less-Dateien im Template-Verzeichnis anlege, um einfach nur die Textfarbe anzupassen.

"/Resources/Views/frontend/\_public/src/less/all.less

"/Resources/Views/frontend/\_public/src/less/modules.less

"/Resources/Views/frontend/\_public/src/less/\_modules/detail.less

Das scheint jedoch nicht zu funktionieren. Nur warum nicht?

Hat jemand eine Idee und kann mir weiterhelfen?

Viele Grüße und einen schönen Abend,

Thomas

---

<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:** [7. Januar 2017 um 02:15 UTC](https://forum.shopware.com/t/all-less-integration-in-einem-plugin-funktioniert-nicht-geklart/42614/2 "2017-01-07T02:15:02Z")

</div>

Für less und js gibt es eigene Funktionen.

```
/**
     *
     * @param Enlight_Event_EventArgs $args
     * @return \Doctrine\Common\Collections\ArrayCollection
     */
    public function addLessFiles(Enlight_Event_EventArgs $args)
    {
        $less = new \Shopware\Components\Theme\LessDefinition(
        /* Configuration */
            array(
            /* Less files to compile */
            array( __DIR__. '/Views/responsive/frontend/_public/src/less/all.less'),
            /* Import directory */
            __DIR__
        );

        return new Doctrine\Common\Collections\ArrayCollection(array($less));
    }

```

&nbsp;

---

<div class="post-metadata">

**Author:** ![ModHoc](https://avatars.discourse-cdn.com/v4/letter/m/8e8cbc/32.png) [@ModHoc](https://forum.shopware.com/u/ModHoc)\
**Post date:** [7. Januar 2017 um 16:11 UTC](https://forum.shopware.com/t/all-less-integration-in-einem-plugin-funktioniert-nicht-geklart/42614/3 "2017-01-07T16:11:41Z")

</div>

Hallo,

zunächst vielen Dank für deine Antwort.&nbsp;

Ich habe die addLess-Funktion jetzt in einem eigenen Subscriber (siehe unten) untergebracht und in Resources/services.xml hinterlegt.  
Der DesignFiles-Subscriber reagiert auf den Event “Theme\_Compiler\_Collect\_Plugin\_Less”. Siehe hierzu auch in der Shopware 5 Doku “plugin update guide”.

Leider kann ich nun nicht mehr das Theme kompilieren… (Warum auch immer…) und kann somit nicht testen, ob meine Änderungen funktionieren.

Habe ich das nun falsch eingebunden?

&nbsp;

Subscriber/DesignFiles.php

```
container = $container;
        $this->path = $this->container->getParameter('modhoc_editor.plugin_dir');
    }

    public static function getSubscribedEvents() {
        return [
            'Theme_Compiler_Collect_Plugin_Less' => 'addLessFiles',
        ];
    }

    public function addLessFiles(Enlight_Event_EventArgs $args) {
        $less = new \Shopware\Components\Theme\LessDefinition(
                //configuration
                array(),
                //less files to compile
                array(
                    __DIR__. '/../Resources/Views/frontend/_public/src/less/all.less'
                ),
                //import directory
                __DIR__
        );

        return new Doctrine\Common\Collections\ArrayCollection(array($less));
    }

}

```

&nbsp;

---

<div class="post-metadata">

**Author:** ![ModHoc](https://avatars.discourse-cdn.com/v4/letter/m/8e8cbc/32.png) [@ModHoc](https://forum.shopware.com/u/ModHoc)\
**Post date:** [7. Januar 2017 um 16:36 UTC](https://forum.shopware.com/t/all-less-integration-in-einem-plugin-funktioniert-nicht-geklart/42614/4 "2017-01-07T16:36:10Z")

</div>

Ok ich habs und irgendwie lässt sich das Ganze auch wieder kompilieren.

Also für die Nachwelt: der passende Subscriber in Bezug auf meinen Fall

&nbsp;

```
container = $container;
        $this->path = $this->container->getParameter('modhoc_editor.plugin_dir');
    }

    public static function getSubscribedEvents() {
        return [
            'Theme_Compiler_Collect_Plugin_Less' => 'addLessFiles',
        ];
    }

    public function addLessFiles(Enlight_Event_EventArgs $args) {
        $less = new LessDefinition(
                //configuration
                array(),
                //less files to compile
                array(
                    __DIR__. '/../Resources/Views/frontend/_public/src/less/all.less'
                ),
                //import directory
                __DIR__
        );

        return new ArrayCollection(array($less));
    }

}

```

&nbsp;
