如何从 Magento 2.0 Luma 模板中删除“我的愿望清单”和“比较产品”块?

Posted

技术标签:

【中文标题】如何从 Magento 2.0 Luma 模板中删除“我的愿望清单”和“比较产品”块?【英文标题】:How to remove "My Wish List" and "Compare Products" blocks from Magento 2.0 Luma template? 【发布时间】:2016-04-12 14:41:40 【问题描述】:

我花了很多时间试图从 Luma 模板中删除“我的愿望清单”和“比较产品”块。此外,我需要更改和删除一些底部链接。

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

谢谢

【问题讨论】:

【参考方案1】:

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

【讨论】:

【参考方案2】:

我已经尝试了对我有用的步骤。

1.我的愿望清单

对于愿望清单,您需要通过Admin > Stores > Configuration > Customers > Wish list > General Options 将其删除 将启用设置为否,然后保存。

2。比较产品

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

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

打开这个文件找到这个标签“”,在正文结束标签之前放上以下代码

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

确保这将从产品类别中删除比较产品 但是,您可以将其用于任何布局。

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

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

【讨论】:

你好 gyus 我建议大家不要修改空白和亮度主题,因为它们是默认安装的,而不是这个更好的解决方案是请创建自己的主题并按顺序使用它使用即将推出的 magento 版本保留您的商店 如果您只是想从侧边栏中删除“我的愿望清单”,但仍保留产品页面上的功能,则在 default.xml 中添加:<referenceContainer name="wishlist_sidebar" remove="true" /> (source)跨度> 请不要编辑vendor 文件夹中的任何内容。这是不稳定的(临时的),并且会在 Magento 更新时消失。【参考方案3】:

更新:适用于 Magento 2.1

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

【讨论】:

【参考方案4】:

覆盖核心模块,如下所示: 代码/自定义/愿望清单:

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>

【讨论】:

【参考方案5】:

企业用户注意事项:您可能还需要删除“多个愿望清单”块:

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

【讨论】:

【参考方案6】:

(M2.1) 如果您不想创建自定义主题和/或更喜欢从后端工作,您可以在后端执行以下操作。 导航到您要更改的 cms 页面、类别或产品页面。 类别页面示例:在 Design -> Layout Update 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>  

【讨论】:

【参考方案7】:

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 -->

【讨论】:

如何找到愿望清单侧边栏集合,我想在我的自定义 phtml 文件中使用,任何帮助谢谢。【参考方案8】:

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

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

【讨论】:

【参考方案9】:

用于删除比较链接

<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"/>

【讨论】:

【参考方案10】:

几乎是一样的

&lt;referenceBlock name="block.name.wantoberemoved" remove="true"/&gt;

从侧边栏中删除比较产品

&lt;referenceBlock name="catalog.compare.sidebar" remove="true" /&gt;

从侧边栏中删除愿望清单

&lt;referenceBlock name="wishlist_sidebar" remove="true" /&gt;

【讨论】:

【参考方案11】:

我使用所有这些来删除愿望清单的痕迹,并从类别和产品页面以及产品页面上的相关和追加销售中进行比较。在 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" />

【讨论】:

如果客户已登录,您可以有条件地执行此操作吗?

以上是关于如何从 Magento 2.0 Luma 模板中删除“我的愿望清单”和“比较产品”块?的主要内容,如果未能解决你的问题,请参考以下文章

为啥将 Magento2 样本数据中的 Luma Thema 样本图像扩展到自定义主题时不可见?

设计magento 2主题的布局

Magento修改css样式

如何安装Magento模板

在 magento 1.9.0.0 中如何启用模板路径提示?

在 Magento 中,块如何从模型中获取数据?