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?


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


1
Não funciona #
Luis Garcia


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>

É 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


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>

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


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>

é 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
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.