Ich hoffe, ich habe mich hier richtig einsortiert. Mein Problem ist folgendes:
Ich bin neu in der Shopware Plugin Entwicklung und versuche meinem Frontend-Plugin einige Styles mitzugeben. Dafür möchte ich aber ungern ein eigenes Theme erstellen, da es sich lediglich um einen Button handelt, der im Frontend zusätzlich auftaucht. (Dieser soll gestylt werden)
Der Shopbetreiber soll nachher im Backend beispielsweise eine Farbe wählen können (via 'color' Picker, alles kein Problem), die dann zur Schriftfarbe des Buttons wird. So weit so gut, nur hängt es bei mir beim Einbinden meiner less-Datei in das System. Ich habe mich bereits an folgendem Thread orientiert less-files von Plugins überschreiben, bin habe es jedoch nicht geschafft, meine less zu integrieren.
Meine Bootstrap.php sieht folgendermaßen aus:
private function subscribeEvents() { /* Subscribe the needed event for less merge and compression */ $this->subscribeEvent('Theme_Compiler_Collect_Plugin_Less', ' addLessFiles'); } /* Provide the file collection for less @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)); } public function onFrontendPostDispatch(Enlight_Event_EventArgs $args) { /* @var \Enlight_Controller_Action $controller */ $controller = $args->get('subject'); $view = $controller->View(); $view->addTemplateDir(__DIR__ . '/Views'); $view->assign('use_resetbtn_option', $this->Config()->get('use_resetbtn_option')); $view->assign('font_color', $this->Config()->get('font_color')); $view->assign('resetbtn_caption', $this->Config()->get('resetbtn_caption')); $view->assign('resetbtn_position', $this->Config()->get('resetbtn_position')); }Die entsprechenden Variablen sind in der Config natürlich definiert und funktionieren auch (habe sie mir im Frontend ausgeben lassen, alles korrekt soweit).
Von dem Inhalt meiner LESS-Datei ist jedoch nichts zu sehen... Habe ich irgendwas vergessen oder falsch verstanden?
Außerdem eine weitere Frage: Kann ich auch in meiner Less-Erweiterung die Smarty-Variablen verwenden, die ich in meiner Bootstrap.php definiere, also für das Beispiel eben mit der Farbe folgendermaßen:
.neuer_button { color: {$font_color}; }Probleme wegen der geschweiften Klammern dürfte es ja eigentlich nicht geben, da das Schachteln von Elementen in CSS und LESS grundsätzlich ja möglich ist, oder irre ich hier?
Vielen Dank im Voraus!