Como remover os links "Contratos de cobrança" e "Minha lista de desejos" no menu de navegação na página da conta do cliente?
Como remover os links "Contratos de cobrança" e "Minha lista de desejos" no menu de navegação na página da conta do cliente?
Respostas:
Adicione um novo identificador de layout a um dos locais:
VendorName/ModuleName/view/frontend/layout/customer_account.xml
app/design/frontend/VendorName/themeName/Magento_Wishlist/layout/customer_account.xml
(e layout semelhante para o módulo do contrato de cobrança)Conteúdo do identificador de layout:
<?xml version="1.0"?>
<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-wish-list-link" remove="true"/>
<referenceBlock name="customer-account-navigation-billing-agreements-link" remove="true"/>
</body>
</page>
app/design
parece ser um bom lugar para desenvolvedores de temas.
Lista completa de remoção de XML da conta do cliente para M2. Será útil para outros desenvolvedores que tentarem remover outros links. Eu acho que é uma boa idéia mantê-lo com informações extras para outros desenvolvedores.
<?xml version="1.0"?>
<!--
/**
* Copyright © 2016 Magento. All rights reserved.
* See COPYING.txt for license details.
*/
-->
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<body>
<!-- Remove unwanted account navigation links -->
<!-- Put this file in: app/design/frontend/[Namespace]/[Theme]/Magento_Customer/layout/customer_account.xml -->
<!-- Store credit -->
<referenceBlock name="customer-account-navigation-customer-balance-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"/>
<!-- Address link -->
<referenceBlock name="customer-account-navigation-address-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"/>
<!-- Gift card link -->
<referenceBlock name="customer-account-navigation-gift-card-link" remove="true"/>
<!-- Order by SKU -->
<referenceBlock name="customer-account-navigation-checkout-sku-link" remove="true"/>
<!-- Gift registry -->
<referenceBlock name="customer-account-navigation-giftregistry-link" remove="true"/>
<!-- Reward points -->
<referenceBlock name="customer-account-navigation-reward-link" remove="true"/>
</body>
</page>
customer-account-navigation-delimiter-1
e customer-account-navigation-delimiter-2
são os nomes das seções vazias / decorativas - também conhecidas como delimitadores.
app/code/<Vendor>/<Module>/view/frontend/layout/customer_account.xml
. Eu tenho uma pasta de tema separada embora.
Na instalação do meu mage (2.2.2 edition), existe outro link:
<!-- Invitations -->
<referenceBlock name="customer-account-navigation-magento-invitation-link-container" remove="true"/>
Adicionei o seguinte CSS para ocultar a guia Contratos de cobrança nas páginas da minha conta de cliente. Existem maneiras melhores de fazer isso, conforme mencionado, mas isso é rápido e fácil!
nav.account-nav li.nav.item a [href * = "billing_agreement"] {display: none;}
Você pode fazer o mesmo com a lista de desejos ou qualquer outro link que queira remover. Basta direcionar o elemento usando um seletor, conforme explicado aqui: https://www.w3schools.com/cssref/css_selectors.asp
No começo, oculto links no MENU da conta do cliente usando CSS como #Cristina mencionado, porque pensei que a solução com xml seria muito trabalhosa.
Mas não é nada complicado. Você só precisa escolher os links que você deseja remover.
O que é importante: olhando a fonte do código da página - não há links para a solução CSS (exibição: none;)
Remova os links desnecessários da conta do cliente no Magento 2 para gerenciar a seção "Minha conta".
Obtenha a solução programática em https://meetanshi.com/blog/remove-unnecessary-customer-account-links-in-magento-2/
<referenceBlock name="customer-account-navigation-wish-list-link" remove="true"/>
(2) usar um plug-in ver github.com/magepal/magento2-customer-account-links-manager