Как удалить поле «Компания» из процесса оформления заказа в 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
Это не работает
Луис Гарсия
Вот тот же вопрос: github.com/magento/magento2/issues/3373#event-547267751
Khoa TruongDinh
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>
yuklia
источник
Не работает
Луис Гарсия
4

Magento Предоставить конфигурацию бэкенда для отображения компании или нет в CHeckout. введите описание изображения здесь

Санджай Чаухан
источник
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