Magento 2: tipi di campi disponibili in system.xml


26

Quali sono i valori disponibili per i tipi di campo nel etc/system.xmlfile di configurazione:

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

Risposte:


44

La configurazione del sistema Magento 2 fornisce i seguenti tipi di campi .

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

l'etichetta non funziona
Zorox

qualche idea su come realizzare il pulsante Sì / NO con il colore verde / grigio?
Zeeshan Khuwaja,

@ZeeshanKhuwaja e le persone future, questo non si collega alla Q ma vuoi aggiungere <source_model> Magento \ Config \ Model \ Config \ Source \ Yesno </source_model> al tuo campo
John

15

Guardando il file /lib/internal/Magento/Framework/Data/Form/Element/Factory.php(trovato qui su Github, per Magento 2.2 e 2.3), è possibile trovare il seguente elenco predefinito di elementi, come specificato da Amit nella sua risposta :

// 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 Composer è stato usato per installare Magento, i dati possono anche essere trovati in /vendor/magento/framework/Data/Form/Element/Factory.php, come menzionato nel commento di Mohit di seguito.


2
Mi scuso per aver aggiunto una nuova risposta piuttosto che commentare quella di Amit. Al momento di pubblicare questa risposta non ho abbastanza reputazione per commentare le risposte degli altri.
RNanoware,

Penso che tu abbia completato la risposta di Amit aggiungendo i dettagli del file di fabbrica. Eseguito l'upgrade per questo.
Mohit Kumar Arora,

3
Ma il mio Magento 2.2.3 non ha questo percorso. Ho trovato il file Factory.php sul /vendor/magento/framework/Data/Form/Element/Factory.phppercorso.
Mohit Kumar Arora,

2
@MohitKumarArora Hai ragione! Penso che i diversi percorsi dei file abbiano a che fare con il modo in cui è stato installato Magento: la clonazione da Git sembra usare /lib/internal, mentre Composer è noto per creare la /vendorcartella. Aggiornerò la risposta di conseguenza. Grazie!
RNanoware,

Qualcuno può aggiungere / spiegare tipi di campo con modelli sorce, come yesno ha il modello sorgente Magento / config / model / config / source / yesno
nagendra
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.