RC3: Twig Blöcke aus Theme Plugin lassen sich nicht mehr mit Custom Plugin überschreiben

Ich habe seit kurzem das Problem, dass ein funktionierendes Plugin welches Blöcke aus dem Storefront und aus einem Theme Plugin nicht mehr überschreibt. Alle Templates die im Theme sind werden ignoriert, Templates die nicht im Theme vorkommen können erweitert werden.

Hat sich in letzter Zeit etwas in der Vererbung der Twig Templates getan? Es hat jedenfalls mal funktioniert und es wäre auch schön wenn es das wieder wird :wink:

Die Struktur hat sich leicht verändert.

Bspw. nicht mehr 

{% sw_extends ‘@Storefront/base.html.twig’ %}

sondern nun

{% sw_extends ‘@Storefront/storefront/base.html.twig’ %}

Ist mir heute aufgefallen bei einem eigenen Plugin, was ich vor zwei Monaten geschrieben hatte.

 

Hey danke, soweit war ich auch schon :slight_smile:

Mein Problem ist etwas komisch, ich probiere mal ein Template aus einem gewöhnlichen Plugin mit einem anderen Plugin zu erweitern…

Die Ordner Struktur hat sich meine ich auch etwas angepasst. Bin mir aber nicht ganz sicher, beim Theme war es zumindest teilweise so.

Aber nur mal am Rande : Die Überschrift ist falsch, gibt kein smarty, sondern Twig. Das ist nur ein Schreibfehler?

@Shopwareianer‍
Obviously meinte ich Twig nicht Smarty - danke für den Hinweis :wink:

 

Bei mir besteht ein ähnliches Problem, in einem Plugin wollte ich in mein Theme einen Block überschreiben.

{% sw_extends '@ThemeName/storefront/layout/header/header.html.twig' %}

{% block layout_header_navigation %}
  Hello, World!
{% endblock %}

Das Funktioniert komischer weise wenn ich mein Theme nicht als aktives eingestellt habe, sobald ich aber das als Storefront einstelle wird der Block aus dem Theme geladen, dass Plugin kann nicht ohne das Theme installiert werden also kann es nicht an der Reihenfolge der Plugins liegen.

Ein Bekannter hat sich gestern mit dem selben Problem bei mir gemeldet. Vermutlich betrifft es nur Themes + Plugins nicht Plugins + Plugins.

Gib es denn wie bei Shopware 5 einen Theme Ordner? Ich finde persönlich besser wenn man weiterhin Templates aus dem Theme mit einem Plugin überschreiben könnte!

Es hat auch definitiv mal funktioniert. Einziges Problem hier war die Reihenfolge - Diese konnte ich aber anhand der Plugin ID beeinflussen.

Habs gefunden: In der theme.json kann man nun die Reihenfolge bestimmen - ein Theme wird hierbei nicht mehr als Plugin behandelt. Default ist: Theme überschreibt jegliches Plugin. Kann man aber umstellen :wink: