如何从 Magento 2.0 Luma 模板中删除 "My Wish List" 和 "Compare Products" 块?

How to remove "My Wish List" and "Compare Products" blocks from Magento 2.0 Luma template?

我花了很多时间试图从 Luma 模板中删除 "My Wish List" 和 "Compare Products" 块。此外,我需要更改并删除一些底部链接。

我找不到修改的地方。你能帮帮我吗?

谢谢

登录到 Magento 后端。转到商店 - >配置。 在客户 -> 愿望清单下,您可以禁用该选项。

我已经尝试按照对我有用的步骤进行操作。

1.我的愿望清单

对于愿望清单,您需要通过 Admin > Stores > Configuration > Customers > Wish list > General Options 将其删除 make to enabled to no 然后保存。

2。比较产品

这里你需要做一些编码级别的改变。关注我

转到vendor > magento > theme-frontend-luma > Magento_Catalog > layout > default.xml

打开此文件找到此标记“”,并在正文结束标记之前放置以下代码

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

Make sure this will remove compare product from category product listing however you can uses this to any layout.

完成此操作后不要忘记清除缓存(如果启用),否则您将无法获得理想的输出。

如果您还有任何疑问,请告诉我

更新:对于 Magento 2.1

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

覆盖如下核心模块: code/Custom/Wishlist:

code/Custom/Wishlist/registration.php

<?php \Magento\Framework\Component\ComponentRegistrar::register( \Magento\Framework\Component\ComponentRegistrar::MODULE, 'Custom_Wishlist', __DIR__ );

code/Custom/Wishlist/composer.json

   {
  "name": "custom/wishlist-magento2",
  "description": "N/A",
  "require": {
    "php": "~5.5.0|~5.6.0|~7.0.0"
  },
  "type": "magento2-module",
  "license": [
    "OSL-3.0",
    "AFL-3.0"
  ],
  "version": "1.0.0",
  "authors": [
    {
      "name": "Pramod Kharade",
      "email": "support@blazeclan.com",
      "homepage": "https://www.blazeclan.com/",
      "role": "Developer"
    }
  ],
  "autoload": {
    "files": [
      "registration.php"
    ],
    "psr-4": {
      "Custom\wishlist\": ""
    }
  }
}

code/Custom/Wishlist/etc/module.xml

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
    <module name="Custom_Wishlist" setup_version="1.0.0" >
         <sequence>
            <module name="Magento_Wishlist" />
        </sequence>
    </module>
</config>

code/Custom/Wishlist/etc/view/frontend/layout/default.xml

<?xml version="1.0"?>

    <referenceContainer name="sidebar.additional" remove="true">
        <block class="Magento\Wishlist\Block\Customer\Sidebar" name="wishlist_sidebar" as="wishlist" template="Magento_Wishlist::sidebar.phtml"/>
    </referenceContainer>
</body>

企业用户须知:您可能还需要删除 "multiple wishlist" 块:

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

(M2.1)
如果您不想创建自定义主题 and/or 更喜欢在后台工作,您可以在后台执行以下操作。 导航到您要更改的 cms 页面、类别或产品页面。 类别页面示例:在设计 -> 布局更新 XML 下添加以下代码:

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

注意:如果您希望在侧边栏中保留额外的块,请将额外的容器设置为 "false",如下所示:

 <referenceContainer name="content">
     <referenceContainer name="sidebar.additional" remove="false" />
 </referenceContainer>  

Magento 2.2.3 - 去掉比较

所以我遇到了同样的问题,但发现我需要在 default.xml 中添加更多方法来摆脱比较:

<referenceBlock name="catalog.compare.sidebar" remove="true"/> <!-- Remove sidebar -->
<referenceBlock name="catalog.compare.link" remove="true"/> <!-- Remove link in header -->
<referenceBlock name="related.product.addto.compare" remove="true"/> <!-- Related product -->
<referenceBlock name="category.product.addto.compare" remove="true"/> <!-- Category add compare -->
<referenceBlock name="view.addto.compare" remove="true" /> <!-- Product addto compare -->

而不是删除父块只是删除到点块

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

删除比较链接

<referenceBlock name="catalog.compare.sidebar" remove="true"/> <!-- Remove sidebar -->
<referenceBlock name="catalog.compare.link" remove="true"/> <!-- Remove link in header -->
<referenceBlock name="related.product.addto.compare" remove="true"/> <!-- Related product -->
<referenceBlock name="category.product.addto.compare" remove="true"/> <!-- Category add compare -->
<referenceBlock name="view.addto.compare" remove="true" /> <!-- Product addto compare -->

对于愿望清单: 您可以在“管理”>“商店”>“配置”>“客户”>“愿望清单”>“常规选项”中将其删除,将启用设置为“否”,然后保存。

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

几乎完全一样

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

从边栏中删除比较产品

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

从边栏中删除心愿单

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

我使用所有这些来删除心愿单的痕迹,并从类别和产品页面进行比较+产品页面上的相关和追加销售。在 v2.3.5-p1 上测试:

<referenceBlock name="wishlist_sidebar" remove="true" />
<referenceBlock name="catalog.compare.sidebar" remove="true"/> 
<referenceBlock name="upsell.product.addto.wishlist" remove="true" />
<referenceBlock name="related.product.addto.wishlist" remove="true" />
<referenceBlock name="related.product.addto.compare" remove="true" />
<referenceBlock name="view.addto.wishlist" remove="true" />
<referenceBlock name="view.addto.compare" remove="true" />