kommad
2. März 2017 um 09:23
1
Hallo,
Folgendes Setup:
Multistore mit 4 Shops
Jeder Shop soll über ein eigenes Theme konfiguriert werden (Theme-ShopA, Theme-ShopB, Theme-ShopC, Theme-ShopD)
Die Shops unterscheiden sich nur im Logo und im CSS
Nun benötigen wir so etwas wie ein eigenes Master Template auf das alle 4 Shops zurückgreifen.
Denn die tpl Änderungen gelten für alle 4 Shops. Derzeit müsste man ja eine Template Anpassung 4 mal machen (für jedes Theme).
Quasi eine Bare Kopie, damit bei einem Update noch alles klappt.
Dieses sollte nach Möglichkeit dann auch wieder auf das original Bare zurückgreifen:
- Theme-ShopA (CSS,JS,LOGO)
– Master-Template (tpl)
— Responsive
---- Bare
Hat jemand eine Idee?
Viele Grüße
Oliver
Du kannst in der Theme.php deines Theme-ShopA auch einfach $extend = „MasterTemplate“ setzen.
Viele Grüße
1 „Gefällt mir“
Das wäre grundsätzlich die richtige vorgehensweise. In vielen Fällen schiebt man auch noch eine Ebene dazwischen:
- Theme-ShopA (CSS,JS,LOGO)
– Master-Template für Plugin-Anpassungen (tpl) $injectBeforePlugins = false;
— Master-Template (tpl) $injectBeforePlugins = true;
---- Responsive
----- Bare
Der Hintergrund hier ist relativ einfach: Du hast ein Master-Template, was die Styles und deine Änderungen usw. bereitstellt. Das soll natürlich keine Plugins überschreiben. Aber natürlich willst du ggf. auch einzelne Plugins überschreiben/anpassen. Daher brauchst du noch ein zweites Theme, was dann nach den Plugins geladen wird.
1 „Gefällt mir“
kommad
2. März 2017 um 09:41
4
Hallo, danke für die Antworten! Spitze - ich teste das gleich und gebe dann Feedback!
kommad
2. März 2017 um 10:45
5
Funktioniert alles wie gewünscht.
- Theme-ShopA (CSS,JS,LOGO) $extend = " Master_Template_Plugin "
– Master_Template_Plugin $extend = " Master_Template " // $injectBeforePlugins = false;
— Master_Template (tpl) extend = " **Responsive**" // injectBeforePlugins = true;
---- Responsive $extend = “Bare”
----- Bare