Magento 2: tipos de campo disponibles en system.xml


26

Cuáles son los valores disponibles para los tipos de campo en el etc/system.xmlarchivo de configuración:

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

Respuestas:


44

La configuración del sistema Magento 2 proporciona los siguientes tipos 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

la etiqueta no funciona
— Zorox

¿Alguna idea sobre cómo hacer un botón Sí / NO con color verde / gris?
— Zeeshan Khuwaja

@ZeeshanKhuwaja y las personas futuras, esto no se vincula a la Q pero desea agregar <source_model> Magento \ Config \ Model \ Config \ Source \ Yesno </source_model> a su campo
— John

15

Mirando el archivo /lib/internal/Magento/Framework/Data/Form/Element/Factory.php(que se encuentra aquí en Github, para Magento 2.2 y 2.3), uno puede encontrar la siguiente lista predeterminada de elementos, como lo especifica Amit en su respuesta :

// 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',
];

Si se utilizó Composer para instalar Magento, los datos también se pueden encontrar en /vendor/magento/framework/Data/Form/Element/Factory.php, como se menciona en el comentario de Mohit a continuación.


2
Mis disculpas por agregar una nueva respuesta en lugar de comentar sobre Amit. Al publicar esta respuesta, no tengo suficiente reputación para comentar las respuestas de otros.
— RNanoware

Creo que ha completado la respuesta de Amit agregando detalles del archivo de fábrica. Votaron por esto.
— Mohit Kumar Arora

3
Pero mi Magento 2.2.3 no tiene ese camino. Podría encontrar el archivo Factory.php en la /vendor/magento/framework/Data/Form/Element/Factory.phpruta.
— Mohit Kumar Arora

2
@MohitKumarArora ¡Estás en lo correcto! Creo que las diferentes rutas de archivos tienen que ver con cómo se instaló Magento: parece que se usa la clonación desde Git /lib/internal, mientras que Composer crea la /vendorcarpeta. Actualizaré la respuesta en consecuencia. ¡Gracias!
— RNanoware

¿Alguien puede agregar / explicar tipos de campo con modelos sorce, como yesno tiene el modelo fuente Magento / config / model / config / source / yesno
— nagendra
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.