Intinya adalah, dibandingkan dengan Magento 1, di mana mekanisme fallback semu diimplementasikan. Magento 2 memiliki mekanisme yang mundur sebanyak tema induk dapat ditemukan . Sistem ini sangat mirip dengan yang diperkenalkan di Magento 1.9 menggunakan theme.xml
file.
Misalnya, ketika Anda memiliki 5 tema yang saling mewarisi, maka mekanismenya akan kembali ke masing-masing tema. Paket tidak dipertimbangkan lagi.
Berikut adalah kode semu yang dapat menggambarkan mekanisme desain baru:
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
Sebagai contoh fallback file statis, misalkan ada permintaan untuk logo.svg
gambar dalam tema Kosong.
Menggunakan warisan tema dan melihat aturan fallback file, Magento menggunakan urutan pencarian berikut:
app/design/frontend/Magento/blank/web/images/logo.svg
app/design/frontend/Magento/blank/web/logo.svg
app/design/frontend/Magento/parent_theme/web/images/logo.svg
app/design/frontend/Magento/parent_theme/web/logo.svg
Referensi: http://devdocs.magento.com/guides/v2.0/architecture/view/static-process.html
Logika fallback tema saat ini:
Current_theme/<Namespace>_<Module>/
parent_theme(s)/<Namespace>_<Module>/
module_dir/view/frontend/
module_dir/view/base/
Pola ini juga digunakan untuk tata letak dan templat.
sumber
Logika fallback di Magento 2 benar-benar berbeda dari Magento 1, dan terkait dengan fitur warisan tema.
Menurut dokumen:
Anda dapat memeriksa detail lebih lanjut di dokumen melalui tautan ini: https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/themes/theme-inherit.html
sumber