Hesap navigasyon magento2'ye bağlantılar nasıl eklenir / kaldırılır?


18

Müşteri hesabı sayfasındaki gezinme menüsünden "Faturalandırma Sözleşmeleri" ve "İstek Listem" bağlantılarını nasıl kaldırabilirim?


Bir bağlantıyı kaldırmanın birden çok yoludur. (1) referans bloğunu ada göre kaldırmak için layout.xml <referenceBlock name="customer-account-navigation-wish-list-link" remove="true"/>kullanma (2) bir eklenti kullanın bkz. Github.com/magepal/magento2-customer-account-links-manager
Renon Stewart

@RenonStewart, Müşteri gruplarına göre bağlantıları kaldırabilir miyiz?
Siva

1
@Siva ... Bazı değişiklikle için github.com/magepal/magento2-customer-account-links-manager/blob/... müşteri grubuna göre filtreleme yapabilirsiniz
Renon Stewart

Yanıtlar:


38

Yerlerden birine yeni düzen tutamağı ekleyin:

  1. Yeni modül oluşturuyorsanız: VendorName/ModuleName/view/frontend/layout/customer_account.xml
  2. Yeni tema oluşturuyorsanız, her bloğun ayrı ayrı kaldırıldığını bildirmek için 2 benzer düzen tutamacı oluşturulmalıdır: app/design/frontend/VendorName/themeName/Magento_Wishlist/layout/customer_account.xml(ve faturalandırma sözleşmesi modülü için benzer düzen)

Düzen tanıtıcı içeriği:

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

konum uygulamasına yeni düzen tanıtıcısı ekle \ design \ frontend \ Magento değil mi?
Abdul

Özel modüle eklemek daha iyi değil mi? M2'deki mevcut stratejinin, kod tabanındaki farklı yerlerde (M1'de olduğu gibi) farklı türlerde dosyalar oluşturmak zorunda olmadığınızda, tamamen modüler yaklaşıma izin vermek olduğunu varsayalım. app/designtema geliştiricileri için iyi bir yer gibi görünüyor.
Alex Paliarush

şu anda luma temasını kullanarak sonra \ \ \ \ \ \ \ magento \ theme-frontend-luma \ 'konumunda yeni düzen tutamacı eklensin mi?
Abdul

Yeni bir tema oluşturuyorsanız devdocs.magento.com/guides/v2.0/frontend-dev-guide/themes/… adresini takip edin . Yeni bir modülse, modül dizininize düzen ekleyin.
Alex Paliarush


46

M2 için müşteri hesabı XML kaldırma işleminin tam listesi. Diğer bağlantıları kaldırmaya çalışan diğer geliştiriciler için yararlı olacaktır. Diğer geliştiriciler için ekstra bilgi sahibi olmasını sağlamak iyi bir fikir.

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

Tam listeyi nasıl bildin? Ben magento varsayılan olmayan bazı bağlantılar arıyorum, lütfen bana bu listeyi nasıl bulduğunu söyle, teşekkürler :)
fudu


Ayrıca yararlı: customer-account-navigation-delimiter-1ve customer-account-navigation-delimiter-2boş / dekoratif bölümlerin isimleri - aka sınırlayıcılar.
jamil

olarak bir yapı oluşturursam işe yaramaz app/code/<Vendor>/<Module>/view/frontend/layout/customer_account.xml. Yine de ayrı bir tema klasörü var.
Kelebek

1

Büyücü kurulumumda (2.2.2 ticaret sürümü) başka bir bağlantı daha var:

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

0

Müşteri hesabı sayfalarımdaki Faturalandırma Sözleşmeleri sekmesini gizlemek için aşağıdaki css'yi ekledim. Belirtildiği gibi bunu yapmanın daha iyi yolları vardır, ancak bu hızlı ve kolaydır!

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

Aynısını İstek Listesini veya kaldırmak istediğiniz başka bir bağlantıyı da yapabilirsiniz. Öğeyi burada açıklandığı gibi bir seçici kullanarak hedeflemeniz yeterlidir: https://www.w3schools.com/cssref/css_selectors.asp


0

İlk başta CSS kullanarak CSS kullanarak müşteri hesabı MENU'deki bağlantıları gizledim çünkü xml ile çözümün çok zahmetli olacağını düşündüm.

Ancak bu hiç de karmaşık değil. Sadece kaldırmak istediğiniz bağlantıları seçmeniz gerekir.

Önemli olan: sayfanın kodunun kaynağına bakarak - CSS çözümünün aksine bağlantı yoktur (display: none;)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.