要修改magento2的布局需要有LAYOUT的基础知识http://devdocs.magento.com/gu... magento2每个页面都有多个container,你可以理解为空槽,它们都有固定位置,固定的前后次序。而block是放在container上的,你想在页面放一个block,要先搞明白三件事: 放在什么页面上 放在什么位置(container)上 放什么样的block 例如我想放一个静态内容BLOCK在首页,先要在后台建一个CMS block,它们的ID是ad。按照官方文档,我需要建一个module,并按页面名来命名这个LAYOUT。首页一般是cms_index_index,所以这个LAYOUT应该是:<module>/view/frontend/layout/cms_index_index.xml 因为我需要显示CMS block,所以我的BLOCK代码应该是这样的: <block class="Magento\Cms\Block\Block" name="homepage_ad"> <arguments> <argument name="block_id" xsi:type="string">ad</argument> </arguments> </block> magento2的default theme已经有固定的container,可见:https://segmentfault.com/a/11...要把BLOCK加到指定的container,例如sidebar.additional,应该这样写: <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd"> <body> <referenceContainer name="sidebar.additional"> <block class="Magento\Cms\Block\Block" name="homepage_ad"> <arguments> <argument name="block_id" xsi:type="string">ad</argument> </arguments> </block> </referenceContainer> </body> </page> 以上就是加一个BLOCK简单的过程。
要修改magento2的布局需要有LAYOUT的基础知识
http://devdocs.magento.com/gu...
magento2每个页面都有多个container,你可以理解为空槽,它们都有固定位置,固定的前后次序。而block是放在container上的,你想在页面放一个block,要先搞明白三件事:
放在什么页面上
放在什么位置(container)上
放什么样的block
例如我想放一个静态内容BLOCK在首页,先要在后台建一个CMS block,它们的ID是ad。按照官方文档,我需要建一个module,并按页面名来命名这个LAYOUT。首页一般是cms_index_index,所以这个LAYOUT应该是:<module>/view/frontend/layout/cms_index_index.xml
因为我需要显示CMS block,所以我的BLOCK代码应该是这样的:
magento2的default theme已经有固定的container,可见:https://segmentfault.com/a/11...
要把BLOCK加到指定的container,例如sidebar.additional,应该这样写:
以上就是加一个BLOCK简单的过程。