如何从magento 2的左侧或右侧面板中删除块?


10

我想从左侧面板中删除比较产品和愿望清单块。

我不想更改模板。我正在使用2columns-left

在magento 1.x中,我们在布局文件中使用如下所示。

<cms_index_index>
   <reference name="left">
      <remove name="left.newsletter"/>
   </reference>
</cms_index_index>

如何从magento 2.x删除块?

Answers:


22

几乎一样

<referenceBlock name="block.name.wantoberemoved" remove="true"/>

从侧边栏中删除比较产品

<referenceBlock name="catalog.compare.sidebar" remove="true" />

从侧边栏删除收藏

<referenceBlock name="wishlist_sidebar" remove="true" />

3

在Magento 2中,您可以通过xml从“类别页面”的侧边栏中删除“比较产品”和“愿望清单”。您可以通过将default.xml文件添加到主题中来将其删除:theme_dir / Magento_Catalog / layout / default.xml

并在下面添加XML

<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
 <body>
    <referenceBlock name="catalog.compare.sidebar" remove="true"/>
    <referenceBlock name="sidebar.additional" remove="true"/>
 </body>
</page>

1

您可以在自定义模块中创建新的deafult.xml并编写以下代码,以从左侧边栏中删除最近的订单块

<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:noNamespaceSchemaLocation="../../../../../../../../htdocs/lib/internal/Magento/Framework/View/Layout/etc/page_configuration.xsd">
    <body>
     <referenceContainer name="sidebar.additional">
         <referenceBlock name="catalog.compare.sidebar" remove="true"/>
         <referenceBlock name="wishlist_sidebar" remove="true"/>
     </referenceContainer>
    </body>
</page>

1

该代码在Magento 2.1.1中正常工作。

几乎没有变化:

代替referenceBlockreferenceContainer

<referenceContainer name="block.name.wantoberemoved" remove="true"/>

1

甚至通过管理员“布局XML更新”字段,对我有用的是代码

<referenceContainer name="sidebar.additional" remove="true" />

1

针对企业用户的快速说明:您可能还需要删除“多个愿望清单”块:

<referenceBlock name="multiple-wishlist_sidebar" remove="true" />

伙计,我无法在WEE网站上删除心愿单边栏。这工作完美。谢谢!
Corgalore
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.