Как удалить поле «Компания» из процесса оформления заказа в Magento 2?


13

Как удалить поле «Компания» из процесса оформления заказа в Magento 2? Я искал шаблон, но не нашел его.

Обновление: есть ли способ удалить это поле через макет или шаблон?


Я не могу проверить в данный момент, когда я нахожусь на моем телефоне, но я думаю, что это связано с шаблоном Knockout JS. Есть ли что-то в форме, которую вы можете искать, например, класс или идентификатор?
— Бен Крук

Доставка поля внутри: form id="co-shipping-form". Код для компании поле:<div class="field" name="shippingAddress.company" data-bind="visible: visible, attr: {'name': element.dataScope}, css: additionalClasses">"
— Луис Гарсия

Ответы:


17

Временно мы должны попробовать:

<item name="company" xsi:type="array">
    <item name="visible" xsi:type="boolean">false</item>
</item>

Например, в app/design/frontend/{Vendor Theme}/{Theme}/Magento_Checkout/layout/checkout_index_index.xml, найдите компонент, который вам нужно настроить. Скопируйте соответствующий узел и все родительские узлы до. Мы собираемся удалить / отключить поля телефона и компании:

<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      layout="1column" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <body>
        <referenceBlock name="checkout.root">
            <arguments>
                <argument name="jsLayout" xsi:type="array">
                    <item name="components" xsi:type="array">
                        <item name="checkout" xsi:type="array">
                            <item name="children" xsi:type="array">
                                <item name="steps" xsi:type="array">
                                    <item name="children" xsi:type="array">
                                        <item name="shipping-step" xsi:type="array">
                                            <item name="children" xsi:type="array">
                                                <item name="shippingAddress" xsi:type="array">
                                                    <item name="children" xsi:type="array">
                                                        <!-- The name of the form the field belongs to -->
                                                        <item name="shipping-address-fieldset" xsi:type="array">
                                                            <item name="children" xsi:type="array">
                                                                <!--Remove fields-->
                                                                <item name="telephone" xsi:type="array">
                                                                    <item name="visible" xsi:type="boolean">false</item>
                                                                </item>
                                                                <item name="company" xsi:type="array">
                                                                    <item name="visible" xsi:type="boolean">false</item>
                                                                </item>
                                                            </item>
                                                        </item>
                                                    </item>
                                                </item>
                                            </item>
                                        </item>
                                    </item>
                                </item>
                            </item>
                        </item>
                    </item>
                </argument>
            </arguments>
        </referenceBlock>
    </body>
</page>

[РЕДАКТИРОВАТЬ]:

Из Magento 2.2.x

ХРАНИЛИЩА> Конфигурация> Клиенты> Конфигурация клиента> Параметры имени и адреса> Показать компанию> Нет


1
Это не работает
— Луис Гарсия


2
Магазины> Конфигурация> Покупатели> Конфигурация клиента> Параметры имени и адреса> Показать компанию> Нет Этот код работает отлично.
— Шубхам Джайсвал

10

Я скрыл поле компании, **Magento 2.1**используя следующие шаги:

Скопируйте файл дескриптора в app/design/frontend/PackageName/ThemeName/Magento_Checkout/layout/checkout_index_index.xml

замените следующий код:

<item name="company" xsi:type="array">
        <item name="validation" xsi:type="array">
            <item name="min_text_length" xsi:type="number">0</item>
        </item>
</item>

с

<item name="company" xsi:type="array">
        <item name="visible" xsi:type="boolean">false</item>                                                                                                
        <item name="validation" xsi:type="array">
            <item name="min_text_length" xsi:type="number">0</item>
        </item>
</item>

Достаточно только использования<item name="visible" xsi:type="boolean">false</item>
— LucScu

7

Нет необходимости в кодировании, просто перейдите в «Магазины»> «Конфигурация»> «Cutomers»> «Конфигурация клиента», затем в «Параметры имени и адреса» для параметра «Показать компанию» установлено значение «Нет».


Это на самом деле удаляет поле. Верный. Все остальные ответы в этой теме только скрывают поле.
— Даан ван ден Берг

5

Вы должны попытаться установить false в видимый атрибут:

<item name="company" xsi:type="array">
    <item name="visible" xsi:type="boolean">false</item>
</item>

Не работает
— Луис Гарсия


0

Перейти к vendor / magento / module-checkout / view / frontend / layout / checkout_index_index.xml

находить:

<item name="company" xsi:type="array">
<item name="validation" xsi:type="array">
<item name="min_text_length" xsi:type="number">0</item>
</item> 
</item>

Заменить:

<item name="company" xsi:type="array">
<item name="visible" xsi:type="boolean">false</item>  
<item name="validation" xsi:type="array">
<item name="min_text_length" xsi:type="number">0</item>
</item>
</item>

это для Magento 2.1.9
— Атиш Дипанкар Байдья

Вы рекомендуете редактировать ядро, что не очень хорошо, замените его подходящим способом, чтобы установить это значение, используя лучшие практики
— Xenocide8998
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.