Awaryjna logika projektu Magento2


15

Znamy już logikę awaryjną projektowania z Magento 1.x:

  1. Aktualny pakiet / aktualny motyw
  2. Bieżący pakiet / domyślny motyw
  3. Pakiet podstawowy / domyślny motyw

Teraz. chcę wiedzieć Jak wygląda logika cofania projektu w Magento 2.x dla plików motywów, układów i szablonów?

Opisz krótko.

Odpowiedzi:


12

Chodzi o to, w porównaniu do Magento 1, w którym zaimplementowano pseudo-awaryjny mechanizm. Magento 2 ma mechanizm, który cofa się tyle razy, ile można znaleźć motywu nadrzędnego . System jest bardzo podobny do tego wprowadzonego na Magento 1.9 przy użyciu theme.xmlplików.

Na przykład, gdy masz 5 motywów dziedziczących po sobie, mechanizm wróci do każdego z nich. Pakiet nie jest już brany pod uwagę.

Oto pseudo kod, który może opisać nowy mechanizm projektowania:

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

Jako przykład cofnięcia pliku statycznego załóżmy, że istnieje żądanie logo.svgobrazu w motywie Puste.

Korzystając z dziedziczenia motywu i reguł cofania plików, Magento stosuje następującą kolejność wyszukiwania:

  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

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


fajny udział @ Raphel. Co z układem i szablonem?
Amit Bera

@AmitBera Zredagowałem swoją odpowiedź, ponieważ podany przykład był niejasny w pierwszej części mojej odpowiedzi.
Raphael w Digital Pianism

@RaphaelatDigitalPianism Podany link referencyjny daje 404, byłoby również wspaniale, gdybyś mógł uwzględnić awarię projektową modułów.
Vivek Kumar

1

Obecna logika cofania tematu:

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

Ten wzór został użyty również dla układu i szablonu.


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.