Magento 2: Verfügbare Feldtypen in system.xml

26

Welche Werte sind für Feldtypen in der etc/system.xmlKonfigurationsdatei verfügbar :

<?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>
Alex Gusev
quelle

Antworten:

44

Die Magento 2-Systemkonfiguration bietet folgende Feldtypen .

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
Amit Bera
quelle
Etikett funktioniert nicht
Zorox
Hast du eine Idee, wie man einen Ja / Nein-Knopf mit grüner / grauer Farbe macht?
Zeeshan Khuwaja
@ZeeshanKhuwaja und zukünftige Leute, dies ist kein Link zu Q, aber Sie möchten <source_model> Magento \ Config \ Model \ Config \ Source \ Yesno </ source_model> an Ihr Feld anhängen
John
15

Betrachtet man die Datei /lib/internal/Magento/Framework/Data/Form/Element/Factory.php( hier auf Github für Magento 2.2 und 2.3), so findet man die folgende Standardliste von Elementen, wie von Amit in seiner Antwort angegeben :

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

Wenn Composer zur Installation von Magento verwendet wurde, befinden sich die Daten möglicherweise auch in /vendor/magento/framework/Data/Form/Element/Factory.php, wie in Mohits Kommentar unten erwähnt.

RNanoware
quelle
2
Ich entschuldige mich dafür, dass ich eine neue Antwort hinzugefügt habe, anstatt Amits zu kommentieren. Zum Zeitpunkt der Veröffentlichung dieser Antwort habe ich nicht genug Reputation, um die Antworten anderer zu kommentieren.
RNanoware
Ich denke, Sie haben Amits Antwort vervollständigt, indem Sie Details zu den Factory-Dateien hinzugefügt haben. Dafür aufgewertet.
Mohit Kumar Arora
3
Aber mein Magento 2.2.3 hat keinen solchen Pfad. Ich konnte die Datei Factory.php unter /vendor/magento/framework/Data/Form/Element/Factory.phppath finden.
Mohit Kumar Arora
2
@MohitKumarArora Sie sind richtig! Ich denke, dass die unterschiedlichen Dateipfade damit zu tun haben, wie Magento installiert wurde: Klonen von Git scheint zu verwenden /lib/internal, während Composer dafür bekannt ist, den /vendorOrdner zu erstellen . Ich werde die Antwort entsprechend aktualisieren. Vielen Dank!
RNanoware
Kann jeder kann Feldtypen mit Sorce-Modellen hinzufügen / erklären, wie yesno das Quellmodell Magento / config / model / config / source / yesno
nagendra