내 계정 탐색 magento2에서 링크를 추가 / 제거하는 방법은 무엇입니까?


18

고객 계정 페이지의 탐색 메뉴에서 "결제 계약"및 "내 위시리스트"링크를 제거하는 방법은 무엇입니까?


링크를 제거하는 여러 가지 방법이 있습니다. (1) layout.xml을 사용하여 이름으로 참조 블록을 제거 <referenceBlock name="customer-account-navigation-wish-list-link" remove="true"/>(2) 플러그인 사용 github.com/magepal/magento2-customer-account-links-manager
— Renon Stewart

@RenonStewart, 고객 그룹을 기준으로 링크를 제거 할 수 있습니까?
— Siva

1
@Siva ... github.com/magepal/magento2-customer-account-links-manager/blob/ 를 약간 수정하면 고객 그룹별로 필터링 할 수 있습니다
— Renon Stewart

rakeshjesadiya.com/remove-customer-navigation-links-magento-2 Magento Commerce에서 모든 링크를 제거하십시오.
— Rakesh Jesadiya '20

답변:


38

장소 중 하나에 새 레이아웃 핸들을 추가하십시오.

  1. 새 모듈을 만드는 경우 : VendorName/ModuleName/view/frontend/layout/customer_account.xml
  2. 새로운 테마를 생성하는 경우 각 블록의 제거를 별도로 선언하기 위해 2 개의 유사한 레이아웃 핸들을 만들어야합니다 app/design/frontend/VendorName/themeName/Magento_Wishlist/layout/customer_account.xml(및 결제 계약 모듈의 유사한 레이아웃).

레이아웃 핸들 내용 :

<?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 \ frontend \ Magento 위치에 새 레이아웃 핸들을 추가 하시겠습니까?
— Abdul

사용자 정의 모듈에 추가하는 것이 좋지 않습니까? M2의 현재 전략은 코드베이스의 다른 위치에 다른 유형의 파일을 만들 필요가없는 경우 (M1과 마찬가지로) 완전히 모듈 방식을 허용하는 것입니다. app/design테마 개발자에게는 좋은 장소 인 것 같습니다.
— Alex Paliarush 10

현재 luma 테마를 사용하고 \ vendor \ magento \ theme-frontend-luma 위치에 새 레이아웃 핸들을 추가합니까?
— Abdul

새로운 테마를 만들려면 devdocs.magento.com/guides/v2.0/frontend-dev-guide/themes/…를 따르십시오 . 새 모듈 인 경우 모듈 디렉토리에 레이아웃을 추가하십시오.
— Alex Paliarush


46

M2에 대한 고객 계정 XML 제거의 전체 목록입니다. 다른 링크를 제거하려는 다른 개발자에게 도움이 될 것입니다. 다른 개발자에게 추가 정보를 제공하는 것이 좋습니다.

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

전체 목록을 어떻게 알았습니까? 나는 magento의 기본값이 아닌 일부 링크를 찾고 있습니다.이 목록을 어떻게 찾을 수 있는지 알려주십시오. 감사합니다 :)
— fudu

아 신경 끄시 고, 나는이 링크에 설립 한 magento.stackexchange.com/questions/186056/...
— fudu

또한 유용 : customer-account-navigation-delimiter-1와 customer-account-navigation-delimiter-2- 구분 일명 빈 / 장식 섹션의 이름입니다.
— jamil

로 구조를 만들면 작동하지 않습니다 app/code/<Vendor>/<Module>/view/frontend/layout/customer_account.xml. 그래도 별도의 테마 폴더가 있습니다.
— Butterfly

1

내 마법사 설치 (2.2.2 커머스 에디션)에는 다른 링크가 있습니다.

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

0

고객 계정 페이지에서 결제 계약 탭을 숨기려면 다음 CSS를 추가했습니다. 언급 한대로이 작업을 수행하는 더 좋은 방법이 있지만 이것은 빠르고 쉽습니다!

nav.account-nav li.nav.item a [href * = "billing_agreement"] {display : none;}

위시리스트 또는 제거하려는 다른 링크와 동일한 작업을 수행 할 수 있습니다. https://www.w3schools.com/cssref/css_selectors.asp에 설명 된대로 선택기를 사용하여 요소를 타겟팅하십시오.


0

처음에는 #Cristina가 언급 한대로 CSS를 사용하여 고객 계정 MENU에서 링크를 숨 깁니다 .xml을 사용하는 솔루션이 너무 힘들 것이라고 생각했기 때문입니다.

그러나 전혀 복잡하지 않습니다. 제거하려는 링크 만 선택하면됩니다.

중요한 점 : 페이지 코드의 소스를 보면 CSS 솔루션과 달리 링크가 없습니다 (표시 : 없음;).


당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.