Fallback-Logik für Magento2-Design

15

Wir kennen die Design-Fallback-Logik bereits aus Magento 1.x:

  1. Aktuelles Paket / Aktuelles Thema
  2. Aktuelles Paket / Standardthema
  3. Basispaket / Standarddesign

Jetzt. Ich möchte wissen, was die Fallback-Logik in Magento 2.x für Design-, Layout- und Vorlagendateien ist.

Bitte kurz beschreiben.

Amit Bera
quelle

Antworten:

12

Im Vergleich zu Magento 1 wurde ein Pseudo-Fallback-Mechanismus implementiert. Magento 2 verfügt über einen Mechanismus, der so oft zurückgreift, wie ein übergeordnetes Thema gefunden werden kann . Das System ist dem in Magento 1.9 mit theme.xmlDateien eingeführten System sehr ähnlich .

Wenn Sie zum Beispiel 5 Themen voneinander erben, wird der Mechanismus auf jedes dieser Themen zurückgreifen. Das Paket wird nicht mehr berücksichtigt.

Hier ist ein Pseudocode, der den neuen Entwurfsmechanismus beschreiben kann:

do
    look in the current theme
    current theme will be parent theme on the next iteration
while the current theme has a parent theme

look in the view folder of the module area if the layout/template is not defined in the previous steps

Angenommen, logo.svgim Blank- Design ist eine Anforderung für das Image vorhanden.

Magento verwendet die folgenden Suchreihenfolgen für die Themenvererbung und die Anzeige von Ausweichregeln für Dateien:

  1. app/design/frontend/Magento/blank/web/images/logo.svg
  2. app/design/frontend/Magento/blank/web/logo.svg
  3. app/design/frontend/Magento/parent_theme/web/images/logo.svg
  4. app/design/frontend/Magento/parent_theme/web/logo.svg

Referenz: http://devdocs.magento.com/guides/v2.0/architecture/view/static-process.html

Raphael bei Digital Pianism
quelle
nice share @ Raphel.Was ist mit Layout & Vorlage?
Amit Bera
@AmitBera Ich habe meine Antwort bearbeitet, da das angegebene Beispiel im ersten Teil meiner Antwort etwas verwirrend war.
Raphael bei Digital Pianism
@RaphaelatDigitalPianism Der angegebene Referenzlink gibt 404 an. Es wäre auch großartig, wenn Sie Design-Fallback für Module einschließen könnten.
Vivek Kumar
1

Aktuelle Fallback-Logik des Themas:

  1. Current_theme/<Namespace>_<Module>/
  2. parent_theme(s)/<Namespace>_<Module>/
  3. module_dir/view/frontend/
  4. module_dir/view/base/

Dieses Muster wurde auch für Layout und Vorlage verwendet.

Amit Bera
quelle
0

Die Fallback-Logik in Magento 2 unterscheidet sich grundlegend von Magento 1 und ist mit der Theme-Vererbungsfunktion verknüpft.

Nach dem Dokument:

Die Ausweichreihenfolge unterscheidet sich geringfügig für statische Elemente (CSS, JavaScript, Schriftarten und Bilder) und andere Designdateien, Layouts und Vorlagen.

Sie können weitere Details im Dokument über diesen Link überprüfen: https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/themes/theme-inherit.html

Mike Mo
quelle