Como remover o campo Empresa do processo de checkout no Magento 2?

13

Como remover o campo Empresa do processo de checkout no Magento 2? Estive procurando o modelo, mas não o encontrei.

Atualização: existe alguma maneira de remover esse campo por meio de layout ou modelo?

Luis Garcia
fonte
Não posso verificar no momento que estou no meu telefone, mas acho que está relacionado a um modelo JS do Knockout. Existe algo no formulário que você possa pesquisar, como uma classe ou ID?
Ben Crook
Campos de envio são por dentro: form id="co-shipping-form". Código para o campo da empresa:<div class="field" name="shippingAddress.company" data-bind="visible: visible, attr: {'name': element.dataScope}, css: additionalClasses">"
Luis Garcia

Respostas:

17

Temporariamente, devemos tentar:

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

Por exemplo, em app/design/frontend/{Vendor Theme}/{Theme}/Magento_Checkout/layout/checkout_index_index.xml, localize o componente que você precisa personalizar. Copie o nó correspondente e todos os nós pais até. Vamos remover / desativar os campos de telefone e empresa:

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

[EDITAR]:

Do Magento 2.2.x

LOJAS> Configuração> Clientes> Configuração do cliente> Opções de nome e endereço> Mostrar empresa> Não

Khoa TruongDinh
fonte
1
Não funciona #
Luis Garcia
Aqui é a mesma pergunta: github.com/magento/magento2/issues/3373#event-547267751
Khoa TruongDinh
2
LOJAS> Configuração> Clientes> Configuração do cliente> Opções de nome e endereço> Mostrar empresa> Não Este código funciona perfeitamente.
Shubham Jaiswal
10

Eu ocultei o campo da empresa **Magento 2.1**usando as etapas abaixo:

Copiar arquivo identificador em app/design/frontend/PackageName/ThemeName/Magento_Checkout/layout/checkout_index_index.xml

substitua o código abaixo:

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

com

<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>
Suman Singh
fonte
É uso suficiente apenas<item name="visible" xsi:type="boolean">false</item>
LucScu
7

Não há necessidade de codificação, basta ir para Lojas> Configuração> Cortadores> Configuração do cliente e, em Opções de nome e endereço, você define Mostrar empresa como Não

Aref Ben Lazrek
fonte
Isso realmente remove o campo. Corrigir. Todas as outras respostas neste tópico ocultam apenas o campo.
Daan van den Bergh
5

Você deve tentar definir falso como atributo visível:

<item name="company" xsi:type="array">
    <item name="visible" xsi:type="boolean">false</item>
</item>
yuklia
fonte
Isso não funciona.
Luis Garcia
4

O Magento fornece configuração de back-end para a exibição da empresa ou não no CHeckout. insira a descrição da imagem aqui

Sanjay Chauhan
fonte
0

Vamos para vendor / magento / module-checkout / view / frontend / layout / checkout_index_index.xml

encontrar:

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

Substituir:

<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>
Atish Dipankar Baidya
fonte
é para Magento 2.1.9
Atish Dipankar Baidya
você está recomendando edição para o núcleo que não é bom, substitua com maneira correta para definir este valor utilizando as melhores práticas
Xenocide8998