Magento 2: dostępne typy pól w pliku system.xml

26

Jakie są dostępne wartości dla typów pól w etc/system.xmlpliku konfiguracyjnym:

<?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
źródło

Odpowiedzi:

44

Konfiguracja systemu Magento 2 zawiera poniższe typy pól .

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
źródło
etykieta nie działa
Zorox
jakiś pomysł, jak zrobić przycisk Tak / NIE w kolorze zielonym / szarym?
Zeeshan Khuwaja
@ZeeshanKhuwaja i przyszli ludzie, to nie prowadzi do Q, ale chcesz dołączyć <source_model> Magento \ Config \ Model \ Config \ Source \ Yesno </source_model> do swojego pola
Jan
15

Patrząc na plik /lib/internal/Magento/Framework/Data/Form/Element/Factory.php(znaleziony tutaj na Github, dla Magento 2.2 i 2.3), można znaleźć następującą domyślną listę elementów, określoną przez Amita w jego odpowiedzi :

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

Jeśli do instalacji Magento użyto Kompozytora, dane można również znaleźć w /vendor/magento/framework/Data/Form/Element/Factory.php, jak wspomniano w komentarzu Mohita poniżej.

RNanoware
źródło
2
Przepraszam za dodanie nowej odpowiedzi zamiast komentowania Amit. Po opublikowaniu tej odpowiedzi nie mam wystarczającej reputacji, aby komentować odpowiedzi innych.
RNanoware
Myślę, że wypełniłeś odpowiedź Amita, dodając szczegóły pliku fabrycznego. Oceniony za to.
Mohit Kumar Arora,
3
Ale moje Magento 2.2.3 nie ma takiej ścieżki. Mogłem znaleźć plik Factory.php na /vendor/magento/framework/Data/Form/Element/Factory.phpścieżce.
Mohit Kumar Arora,
2
@MohitKumarArora Masz rację! Myślę, że różne ścieżki plików mają związek z tym, jak zainstalowano Magento: wydaje się, że używa się klonowania z Git /lib/internal, podczas gdy Composer jest znany z tworzenia /vendorfolderu. Odpowiednio zaktualizuję odpowiedź. Dzięki!
RNanoware,
Czy każdy może dodawać / wyjaśniać typy pól za pomocą modeli magii, Tak jak yesno ma model źródłowy Magento / config / model / config / source / yesno
nagendra