Magento 2:如何删除和更改我的帐户导航


9

我正在尝试删除一些标签并更改导航标题: 在此处输入图片说明

如您在上方的导航中所见,如何删除一些导航并更改标题?例如,删除对订阅的Address Book更改NewsLetter Subscriptons

我在寻找css文件nav items,发现了这一点:

<?php
/**
 * Copyright © 2013-2017 Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */
/** @var $block \Magento\Framework\View\Element\Html\Links */
?>
<?php /** @var $block \Magento\Customer\Block\Account\Navigation */ ?>
<div class="block account-nav">
    <div class="title">
        <strong><?php /* @escapeNotVerified */ echo __('My Account'); ?></strong>
    </div>
    <div class="content">
        <nav class="account-nav">
            <ul class="nav items">
                <?php echo $block->getChildHtml();?>
            </ul>
        </nav>
    </div>
</div>

从这里我一直在寻找\Magento\Framework\View\Element\Html\Links但有点卡住,不知道该怎么办。

我是magento 2的新手,所以这里有点菜鸟。

Answers:


28

1)扩展的default.xml文件中添加以下代码,以删除“帐户”标签链接。

app/design/frontend/vendorname/themename/Magento_Theme/layout/default.xml

这是代码列表,用于根据需要删除帐户标签。对您和其他用户也有帮助

        <!-- Address link -->
        <referenceBlock name="customer-account-navigation-address-link" remove="true"/>


        <!-- Downloadable product link -->
        <referenceBlock name="customer-account-navigation-downloadable-products-link" remove="true"/>

        <!-- Subscription link -->
        <referenceBlock name="customer-account-navigation-newsletter-subscriptions-link" remove="true"/>

        <!-- Billing agreement link -->
        <referenceBlock name="customer-account-navigation-billing-agreements-link" remove="true"/>

        <!-- Product review link -->
        <referenceBlock name="customer-account-navigation-product-reviews-link" remove="true"/>

        <!-- My credit card link -->
        <referenceBlock name="customer-account-navigation-my-credit-cards-link" remove="true"/>

        <!-- Account link -->
        <referenceBlock name="customer-account-navigation-account-link" remove="true"/>

        <!-- Account edit link -->
        <referenceBlock name="customer-account-navigation-account-edit-link" remove="true"/>


        <!-- Orders link -->
        <referenceBlock name="customer-account-navigation-orders-link" remove="true"/>

        <!-- Wish list link -->
        <referenceBlock name="customer-account-navigation-wish-list-link" remove="true"/>

2) 重命名通讯订阅

从以下位置复制customer_account.xml

vendor/magento/module-newsletter/view/frontend/layout/customer_account.xml

到扩展模块

app/design/frontend/vendorname/themename/Magento_Newsletter/layout/customer_account.xml

让我知道是否有问题。

更改任何XML文件时保持高速缓存禁用


感谢您的帮助,但是您如何获得所有的名字呢?像customer-account-navigation-wish-list-link
古吉拉特邦桑塔纳

2
供应商/magento/module-customer/view/frontend/layout/customer_account.xml,您可以在此处找到这些链接,其他链接可以在同时存在的模块中找到...例如卖方/ magento / module-wishlist / view /中的愿望清单frontend / layout / customer_account.xml
Manoj Deswal

我使用的是Magento 2.2,我不得不说那是不对的,该文件没有您上面列出的名称。
达斯汀·普瓦桑

@DustinPoissant如果不存在,那么您需要创建这些文件,然后从供应商复制到您的自定义主题
Manoj Deswal,

@ManojDeswal,如何删除仪表板页面并将订单历史记录页面设置为默认值?
贾法尔·品哈尔19'Sep

2

在您的自定义主题中创建xml文件 app/design/frontend/Custom/mytheme/Magento_Customer/layout/customer_account.xml

<?xml version="1.0" encoding="UTF-8"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <body>
        <referenceBlock name="customer-account-navigation-address-link" remove="true"/>
    </body>
</page> 


对于将新闻通讯订阅更改为订阅,vendor/magento/module-newsletter/view/frontend/layout/customer_account.xml请以自定义主题复制文件app/design/frontend/Custom/mytheme/Magento_Newsletter/layout/customer_account.xml并更改所需的文本。
然后运行用于静态内容部署和缓存刷新的命令。


0

从仪表板部分中删除邀请链接。

<!-- Invitations -->
<referenceBlock name="customer-account-navigation-magento-invitation-link-container" remove="true"/>

从“我的帐户”中删除“附加工具栏”(控制台)

<!-- Additional Sidebar -->
<referenceContainer name="sidebar.additional" remove="true" />
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.