Magento2 дизайн запасной логики

15

Мы уже знаем логику восстановления дизайна из Magento 1.x:

  1. Текущий пакет / Текущая тема
  2. Текущий пакет / Тема по умолчанию
  3. Базовый пакет / тема по умолчанию

Сейчас. я хочу знать, какова логика отката в Magento 2.x для файлов тем, макетов и шаблонов?

Пожалуйста, опишите кратко.

Амит Бера
источник

Ответы:

12

Дело в том, что по сравнению с Magento 1, где был реализован псевдо-резервный механизм. В Magento 2 есть механизм, который откатывается столько раз, сколько может быть найдена родительская тема . Система очень похожа на ту, что была представлена ​​в Magento 1.9 с использованием theme.xmlфайлов.

Например, когда у вас есть 5 тем, унаследованных друг от друга, механизм откатится к каждой из них. Пакет больше не учитывается.

Вот псевдокод, который может описать новый механизм проектирования:

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

В качестве примера статического отката файла предположим, что logo.svgв теме Blank есть запрос на изображение.

Используя наследование темы и правила отката файла просмотра, Magento использует следующий порядок поиска:

  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

Ссылка: http://devdocs.magento.com/guides/v2.0/architecture/view/static-process.html

Рафаэль в цифровом пианизме
источник
хорошая акция @ Raphel. А как насчет макета и шаблона?
Амит Бера
@AmitBera Я отредактировал свой ответ, так как приведенный пример немного запутал первую часть моего ответа.
Рафаэль на цифровом пианизме
@RaphaelatDigitalPianism Приведенная ссылка дает 404, было бы также неплохо, если бы вы могли включить запасной вариант дизайна для модулей.
Вивек Кумар
1

Текущая резервная логика темы:

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

Этот шаблон используется для макета и шаблона также.

Амит Бера
источник
0

Резервная логика в Magento 2 полностью отличается от Magento 1 и связана с функцией наследования тем.

Согласно документу:

Резервный порядок немного отличается для статических ресурсов (CSS, JavaScript, шрифты и изображения) и других файлов тем, макетов и шаблонов.

Вы можете проверить более подробную информацию в документе по этой ссылке: https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/themes/theme-inherit.html

Майк Мо
источник