Làm cách nào để thêm / xóa liên kết trên magento2 điều hướng tài khoản của tôi?


18

Làm cách nào để xóa liên kết "Thỏa thuận thanh toán" và "Danh sách mong muốn của tôi" khỏi menu điều hướng trên trang tài khoản khách hàng?


Họ có nhiều cách để loại bỏ một liên kết. (1) sử dụng layout.xml để xóa khối tham chiếu theo tên <referenceBlock name="customer-account-navigation-wish-list-link" remove="true"/>(2) sử dụng plugin xem github.com/magepal/magento2-customer-account-links-manager
Renon Stewart

@RenonStewart, chúng tôi có thể xóa các liên kết dựa trên các nhóm khách hàng không?
Siva

1
@Siva ... Với một số sửa đổi đối với github.com/magepal/magento2-customer-account-links-manager/blob/, bạn có thể lọc theo nhóm khách hàng
Renon Stewart

rakeshjesadiya.com/remove-customer-navlation-links-magento-2 Xóa tất cả các liên kết khỏi Magento Commerce.
Rakesh Jesadiya

Câu trả lời:


38

Thêm tay cầm bố trí mới vào một trong những nơi:

  1. Nếu tạo mô-đun mới: VendorName/ModuleName/view/frontend/layout/customer_account.xml
  2. Nếu tạo chủ đề mới, cần tạo 2 tay cầm bố cục tương tự để khai báo loại bỏ từng khối riêng biệt: app/design/frontend/VendorName/themeName/Magento_Wishlist/layout/customer_account.xml(và bố cục tương tự cho mô-đun thỏa thuận thanh toán)

Bố cục xử lý nội dung:

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

thêm xử lý bố cục mới trong ứng dụng vị trí \ design \ frontend \ Magento phải không?
Abdul

Không phải là tốt hơn để thêm nó vào mô-đun tùy chỉnh? Tôi cho rằng chiến lược hiện tại trong M2 là cho phép tiếp cận hoàn toàn theo mô-đun, khi bạn không phải tạo các loại tệp khác nhau ở các vị trí khác nhau trên cơ sở mã (giống như trong M1). app/designdường như là một nơi tốt cho các nhà phát triển chủ đề.
Alex Paliarush

Hiện tại tôi đang sử dụng chủ đề luma, sau đó tôi thêm xử lý bố cục mới trong vị trí \ nhà cung cấp \ magento \ theme-frontend-luma phải không?
Abdul

Nếu bạn tạo chủ đề mới, hãy theo dõi devdocs.magento.com/guides/v2.0/frontend-dev-guide/theme/ chủ . Nếu mô-đun mới, thêm bố trí vào thư mục mô-đun của bạn.
Alex Paliarush


46

Danh sách đầy đủ loại bỏ tài khoản XML của khách hàng cho M2. Nó sẽ hữu ích cho các nhà phát triển khác, những người cố gắng loại bỏ các liên kết khác. Tôi nghĩ rằng đó là một ý tưởng tốt để giữ cho nó có thêm thông tin cho các nhà phát triển khác.

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

Làm thế nào bạn biết danh sách đầy đủ? Tôi đang tìm kiếm một số liên kết không mặc định của magento, vui lòng cho tôi biết làm thế nào để bạn tìm thấy danh sách này, cảm ơn :)
fudu

À không sao, tôi đã thành lập nó trong liên kết này magento.stackexchange.com/questions/186056/ mẹo
fudu

Cũng hữu ích: customer-account-navigation-delimiter-1customer-account-navigation-delimiter-2là tên của các phần trống / trang trí - còn gọi là dấu phân cách.
Jamil

nó sẽ không hoạt động nếu tôi tạo một cấu trúc như app/code/<Vendor>/<Module>/view/frontend/layout/customer_account.xml. Tôi có một thư mục chủ đề riêng biệt mặc dù.
Bướm

1

Trong bản cài đặt pháp sư của tôi (phiên bản thương mại 2.2.2) có một liên kết khác:

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

0

Tôi đã thêm css sau để ẩn tab Thỏa thuận thanh toán trên các trang tài khoản khách hàng của mình. Có nhiều cách tốt hơn để làm điều này như đã đề cập, nhưng điều này nhanh chóng và dễ dàng!

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

Bạn có thể thực hiện tương tự Danh sách mong muốn hoặc bất kỳ liên kết nào khác mà bạn muốn xóa. Chỉ cần nhắm mục tiêu phần tử bằng cách sử dụng bộ chọn, như được giải thích tại đây: https://www.w3schools.com/cssref/css_selector.asp


0

Lúc đầu, tôi ẩn các liên kết trong tài khoản khách hàng MENU bằng CSS như #Cristina đã đề cập vì tôi nghĩ rằng giải pháp với xml sẽ quá tốn công.

Nhưng nó không phức tạp chút nào. Bạn chỉ cần chọn các liên kết, mà bạn muốn loại bỏ.

Điều quan trọng là: bằng cách xem nguồn mã của trang - không có liên kết nào trái ngược với giải pháp CSS (display: none;)


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.