Bagaimana cara menambah / menghapus tautan pada magento2 navigasi akun saya?


18

Bagaimana cara menghapus tautan "Perjanjian Penagihan" dan "Daftar Keinginan Saya" dari menu navigasi di halaman akun pelanggan?


Ada banyak cara untuk menghapus tautan. (1) menggunakan layout.xml untuk menghapus blok referensi dengan nama <referenceBlock name="customer-account-navigation-wish-list-link" remove="true"/>(2) menggunakan plugin lihat github.com/magepal/magento2-customer-account-links-manager
Renon Stewart

@RenonStewart, bisakah kita menghapus tautan berdasarkan grup pelanggan?
Siva

1
@Siva ... Dengan beberapa modifikasi ke github.com/magepal/magento2-customer-account-links-manager/blob/… Anda dapat memfilter menurut grup pelanggan
Renon Stewart

Jawaban:


38

Tambahkan pegangan tata letak baru ke salah satu tempat:

  1. Jika membuat modul baru: VendorName/ModuleName/view/frontend/layout/customer_account.xml
  2. Jika membuat tema baru, 2 pegangan tata letak yang serupa harus dibuat untuk menyatakan penghapusan setiap blok secara terpisah: app/design/frontend/VendorName/themeName/Magento_Wishlist/layout/customer_account.xml(dan tata letak serupa untuk modul perjanjian tagihan)

Layout menangani konten:

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

tambahkan pegangan tata letak baru di aplikasi lokasi \ design \ frontend \ Magento kan?
Abdul

Bukankah lebih baik menambahkannya ke modul khusus? Saya kira strategi saat ini dalam M2 adalah untuk memungkinkan pendekatan yang benar-benar modular, ketika Anda tidak harus membuat berbagai jenis file di tempat yang berbeda di seluruh basis kode (seperti di M1). app/designtampaknya menjadi tempat yang baik untuk pengembang tema.
Alex Paliarush

Saat ini saya menggunakan tema luma kemudian saya menambahkan pegangan tata letak baru di lokasi \ vendor \ magento \ theme-frontend-luma kan?
Abdul

Jika Anda membuat tema baru, ikuti devdocs.magento.com/guides/v2.0/frontend-dev-guide/themes/… . Jika modul baru, tambahkan tata letak ke direktori modul Anda.
Alex Paliarush


46

Daftar lengkap penghapusan XML akun pelanggan untuk M2. Ini akan membantu bagi pengembang lain yang mencoba menghapus tautan lain. Saya pikir itu ide yang baik untuk tetap memiliki informasi tambahan untuk pengembang lain.

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

Bagaimana Anda tahu daftar lengkapnya? Saya mencari beberapa tautan yang bukan merupakan standar magento, tolong beri tahu saya bagaimana Anda menemukan daftar ini, terima kasih :)
fudu

Ah nevermind, saya telah menemukannya di tautan ini magento.stackexchange.com/questions/186056/…
fudu

Juga bermanfaat: customer-account-navigation-delimiter-1dancustomer-account-navigation-delimiter-2 adalah nama-nama bagian yang kosong / dekoratif - alias pembatas.
jamil

tidak akan bekerja jika saya membuat struktur sebagai app/code/<Vendor>/<Module>/view/frontend/layout/customer_account.xml. Saya punya folder tema terpisah.
Butterfly

1

Dalam instalasi mage saya (edisi perdagangan 2.2.2) ada tautan lain:

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

0

Saya menambahkan css berikut untuk menyembunyikan tab Perjanjian Penagihan di halaman akun pelanggan saya. Ada cara yang lebih baik untuk melakukan ini seperti yang disebutkan, tetapi ini cepat dan mudah!

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

Anda dapat melakukan hal yang sama pada Wishlist atau tautan lain yang ingin Anda hapus. Hanya menargetkan elemen menggunakan pemilih, seperti yang dijelaskan di sini: https://www.w3schools.com/cssref/css_selectors.asp


0

Pada awalnya saya menyembunyikan tautan di MENU akun pelanggan menggunakan CSS seperti yang disebutkan #Cristina karena saya pikir solusi dengan xml akan terlalu sulit.

Tapi itu tidak rumit sama sekali. Anda hanya perlu memilih tautan, yang ingin Anda hapus.

Yang penting: dengan melihat sumber kode halaman - tidak ada tautan yang bertentangan dengan solusi CSS (tampilan: tidak ada;)


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.