Magento 2: tipos de campos disponíveis no system.xml


26

Quais são os valores disponíveis para os tipos de campo no etc/system.xmlarquivo de configuração:

<?xml version="1.0"?>
<config
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Config:etc/system_file.xsd">
    <system>
        <section id="...">
            <group id="...">
                <field id="..." type="???">
                    ...
                </field>
            </group>
        </section>
    </system>
</config>

Respostas:


44

A configuração do sistema Magento 2 fornece abaixo o tipo de campos .

checkbox,
checkboxes,
column,
date,
editablemultiselect,
editor,
fieldset,
file,
gallery,
hidden,
image,
imagefile,
label,
link,
multiline,
multiselect,
note,
obscure,
password,
radio,
radios,
reset,
select,
submit,
text,
textarea,
time

etiqueta não funciona
— Zorox

Alguma idéia de como fazer o botão Sim / NÃO com a cor verde / cinza?
— Zeeshan Khuwaja

@ ZeeshanKhuwaja e futuras pessoas, isso não está vinculado ao Q, mas você deseja anexar o <source_model> Magento \ Config \ Model \ Config \ Model \ Config \ Source \ Yesno </source_model> ao seu campo
— John

15

Observando o arquivo /lib/internal/Magento/Framework/Data/Form/Element/Factory.php(encontrado aqui no Github, para Magento 2.2 e 2.3), é possível encontrar a seguinte lista padrão de elementos, conforme especificado por Amit em sua resposta :

// Factory.php, lines 26-55
protected $_standardTypes = [
    'button',
    'checkbox',
    'checkboxes',
    'column',
    'date',
    'editablemultiselect',
    'editor',
    'fieldset',
    'file',
    'gallery',
    'hidden',
    'image',
    'imagefile',
    'label',
    'link',
    'multiline',
    'multiselect',
    'note',
    'obscure',
    'password',
    'radio',
    'radios',
    'reset',
    'select',
    'submit',
    'text',
    'textarea',
    'time',
];

Se o Composer foi usado para instalar o Magento, os dados também podem ser encontrados em /vendor/magento/framework/Data/Form/Element/Factory.php, como mencionado no comentário de Mohit abaixo.


2
Peço desculpas por adicionar uma nova resposta em vez de comentar as de Amit. Ao postar esta resposta, não tenho reputação suficiente para comentar as respostas de outras pessoas.
— RNanoware 28/02/19

Acho que você concluiu a resposta de Amit adicionando detalhes do arquivo de fábrica. Votado para isso.
— Mohit Kumar Arora

3
Mas meu Magento 2.2.3 não tem esse caminho. Eu poderia encontrar o arquivo Factory.php no /vendor/magento/framework/Data/Form/Element/Factory.phpcaminho.
— Mohit Kumar Arora

2
@MohitKumarArora Você está correto! Eu acho que os diferentes caminhos dos arquivos têm a ver com a instalação do Magento: a clonagem do Git parece usar /lib/internal, enquanto o Composer é conhecido por criar a /vendorpasta. Vou atualizar a resposta de acordo. Obrigado!
— precisa saber é o seguinte

Qualquer um pode adicionar / explicar tipos de campos com modelos sorce, como yesno tem o modelo de origem Magento / config / model / config / source / yesno
— nagendra
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.