#2080 Plugin-Kompatibilität zu ThemeWare® für Shopware 5 herstellen

In diesem Artikel erfährst du, wie du die Kompatibilität zwischen deinem Plugin und ThemeWare® sehr einfach herstellen kannst.


Unsere Kompatibilität ist uns wichtig

ThemeWare ist das marktführende Shopware Theme mit derzeit über 3000x Installationen. Unser Wunsch ist es, dass ThemeWare® zu möglichst vielen Plugins kompatibel ist. So können wir gemeinsam das Ökosystem von Shopware stärken und Shopbetreibern die bestmögliche Erfahrung mit Plugins und Themes bieten.


Wir brauchen deine Hilfe

Zunächst einmal lassen sich viele Inkompatibilitäten von unserer Seite nicht lösen, da Plugins erst nach dem Theme geladen und ausgeführt werden. Ein weiterer Aspekt ist, dass es einen großen Bedarf an Kompatibilitätsherstellungen gibt, den wir alleine nicht erfüllen können.


Somit sind wir und vor allem die Shopbetreiber auf deine Unterstützung angewiesen. Danke, dass du dabei bist!


Kompatibilität herstellen

Nun erklären wir dir kurz, worauf es ankommt und wie du ThemeWare® im Template identifizieren kannst.


ThemeWare® Varianten

Es gibt verschiedene Varianten von ThemeWare®. Da diese jedoch alle die gleiche technischen Basis besitzen, sind in der Regel keine Anpassungen speziell für eine Variante nötig. Was mit einem ThemeWare® funktioniert, sollte auch mit allen anderen funktionieren.


ThemeWare® Grundaufbau

Technisch ist ThemeWare® eine Ableitung des Standard Responsive Themes. Dadurch ist ThemeWare® dem Standard Responsive Theme zwar relativ ähnlich, aber dennoch individuell. Somit ist immer notwendig, dass du kurz in die Template-Dateien von ThemeWare® reinschaust.


Die Template-Dateien von ThemeWare® findest du hier:

custom/plugins/TcinnModernTheme/Resources/Themes/Frontend/ModernTheme

=> "Modern" kann durch den Namen der jeweiligen Variante ersetzt werden


Um diese Inkompatibilitäten zu beheben, kannst du unsere globale ThemeWare®-Variable abfragen und entsprechende Weichen implementieren.


ThemeWare®-Variable

Die ThemeWare®-Variable {$themeware} steht dir global zur Verfügung und enthält Werte nach dem folgenden Schema:

$themeware = [
  'name' => 'ThemeWare Modern',
  'id' => 'themeware-modern',
  'version' => '2.0.3.1'
]

=> "Modern" kann durch den Namen der jeweiligen Variante ersetzt werden


Nachfolgend ein Beispiel, wie du im Template auf ein aktives ThemeWare® prüfen kannst:

{block name='frontend_themeware_example'}
 {if $themeware}
  {* ThemeWare is installed *}
 {/if}
{/block}

ThemeWare® Konfigurationswerte nutzen

Du kannst jederzeit auf die Konfigurationswerte von ThemeWare® zugreifen, um dein Plugin ganz genau auf die ThemeWare® Features anzupassen. Um das richtige Konfigurationsfeld zu finden, kannst du einfach unsere ThemeWare® Feldsuchmaschine benutzen. Die hierfür benötigten Variablen heißen in der Feldsuchmaschine "Technischer Name".


{if $theme.header_headnav_service == 1}
  {* Hier folgt dann deine Anpassung *}
{/if}


Vielen Dank!

Abschließend möchten wir uns herzlichst dafür bei dir bedanken, dass du dein Plugin kompatibel zu ThemeWare® hältst. Bei Fragen, Wünschen oder Anregungen kannst du uns jederzeit hier kontaktieren.


Bitte teile uns deine Meinung mit!

Danke, das hat mir geholfen
Hat mir nicht geholfen

aa7e0b8784c9ad1dfc40319004c89c52