系统学习magento二次开发,推荐小册:《Magento中文全栈二次开发 》
本小册面向Magento2以上版本,书代码及示例兼容magento2.0-2.4版本。涵盖了magento前端开发,后端开发,magento2主题,magento2重写,magento2 layout,magento2控制器,magento2 block等相关内容,带领您成为magento开发技术专家。
Magento的前端允许设计师在基本的空白主题的基础上创建新的主题,在不改变其结构的情况下重用主代码。
回退系统是主题的继承机制,允许开发人员仅创建自定义所需的文件。
例如,Luma主题通过继承空白主题的基本结构来使用回退系统。
Luma主题父级在其theme.xml文件中声明如下:
<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd"> <title>Magento Luma</title> <parent>Magento/blank</parent> <media> <preview_image>media/preview.jpg</preview_image> </media> </theme>
继承的工作原理类似于重写系统。您可以使用现有的主题(父主题)创建新主题,也可以替换(即覆盖)具有相同名称但位于特定主题文件夹(子主题)中的现有文件。
例如,如果在app/design/frontend/<Vendor>/<theme>/文件夹中创建一个新主题,并将Magento/blank声明为父主题,则theme.xml文件registration.php
您已经准备好在新主题中使用整个空白主题结构,包括RWD布局和样式。
假设您在<theme_dir>/web/cssfolder中有一个特定的.css文件。
如果删除此文件,回退系统将在<parent_theme_dir>/web/css中搜索该文件