Wenn du das Erscheinungsbild von ThemeWare® mittels einer Template-Anpassung individuell verändern möchtest, dann kannst du diese über Anpassungen an den Template-Dateien umsetzen.


Voraussetzung

Die Voraussetzung hierfür ist allerdings, dass du diese Anpassungen in einer Ableitung von ThemeWare® durchführst, damit es updatesicher ist. Hier kannst du nachlesen, wie du eine ThemeWare Ableitung erstellen kannst.


Einsicht in den Quellcode

Den grundlegenden Aufbau (Template-Ordner, Template-Dateien, Smarty Blöcke, etc.) geben die Shopware Themes "Bare" und "Responsive" vor, da ThemeWare® technisch eine Ableitung dieser ist.


Auch wenn du die originalen ThemeWare-Dateien nicht bearbeiten darfst, ist es manchmal nötig, dass du hier etwas nachschaust. Du findest die Dateien unter folgendem Pfad in deinem Shopware Ordner (XXX = Modern, Living, Clean, etc.):

  • Version 1.x.x: /engine/Shopware/Plugins/Community/Frontend/TcinnXXXTheme/Themes/Frontend/XXXTheme
  • Version 2.x.x: /custom/plugins/TcinnXXXTheme/Resources/Themes/Frontend/XXXTheme


Eigene Template-Datei ablegen

Im Ordner des abgeleiteten Themes kannst alle Template-Dateien (.tpl) angepassen oder überschrieben, die ThemeWare®,  Bare Theme oder das Responsive Theme verwenden. 

Der Ordner der Ableitung liegt hier: /themes/Frontend/Name-deiner-Ableitung


Deine Ableitung enthält automatisch die gleiche Ordnerstruktur wie die übergeordneten Themes Bare, Responsive und ThemeWare®. Das es hier in dem Ordner der Ableitung nur leere Ordner und keine Dateien gibt, ist erstmal korrekt. Wenn du eine Datei oder einen Block anpassen oder überschrieben möchtest, dann erstellen einfach die zugehörige tpl-Datei mit dem gleichen Namen in dem richtigen Ordner.


Hilfreiche Smarty Grundlagen

Smarty Template Blöcke haben immer den nachfolgenden Aufbau. Die Blocknamen werden von den übergeordneten Template-Dateien (Bare, Responsive und/oder ThemeWare®) vorgegeben oder im Falle von völlig neuen Blöcken, von dir festgelegt.


Ableitung in neuer Template-Datei hinterlegen

In der ersten Zeile der Datei muss definiert werden, von welcher übergeordneten Datei diese abgeleitet wird.

{extends file="parent:frontend/index/dateiname.tpl"}


Block überschreiben

{block name='frontend_index_blockname'}
    // Platzieren Sie hier den neuen Inhalt
{/block}


Block nach dem Inhalt ergänzen

{block name='frontend_index_blockname'}
    {$smarty.block.parent}
    // Platzieren Sie hier den zusätzlichen Inhalt
{/block}


Block vor dem Inhalt ergänzen

{block name='frontend_index_blockname'}
    // Platzieren Sie hier den zusätzlichen Inhalt
    {$smarty.block.parent}
{/block}