Magento 2: доступные типы полей в system.xml

26

Какие доступны значения для типов полей в etc/system.xmlфайле конфигурации:

<?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>
Алекс Гусев
источник

Ответы:

44

Конфигурация системы Magento 2 обеспечивает тип поля ниже .

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
Амит Бера
источник
ярлык не работает
Zorox
Любая идея о том, как сделать кнопку Да / Нет с зеленым / серым цветом?
Зеешан Хуваджа
@ZeeshanKhuwaja и будущие люди, это не связано с Q, но вы хотите добавить <source_model> Magento \ Config \ Model \ Config \ Source \ Yesno </ source_model> к вашему полю
Джон
15

Глядя на файл /lib/internal/Magento/Framework/Data/Form/Element/Factory.php(найденный здесь на Github, для Magento 2.2 и 2.3), можно найти следующий список элементов по умолчанию, как указано Амитом в его ответе :

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

Если Composer использовался для установки Magento, данные также могут быть найдены в /vendor/magento/framework/Data/Form/Element/Factory.php, как упомянуто в комментарии Мохита ниже.

RNanoware
источник
2
Мои извинения за добавление нового ответа, а не комментирование Амита. На момент публикации этого ответа у меня недостаточно репутации, чтобы комментировать ответы других.
RNanoware
Я думаю, что вы завершили ответ Амит, добавив заводские данные файла. За это проголосовали.
Мохит Кумар Арора
3
Но у моего Magento 2.2.3 такого пути нет. Я мог найти файл Factory.php по /vendor/magento/framework/Data/Form/Element/Factory.phpпути.
Мохит Кумар Арора
2
@MohitKumarArora Вы правы! Я думаю, что разные пути к файлам связаны с тем, как был установлен Magento: похоже, что используется клонирование из Git /lib/internal, а Composer, как известно, создает /vendorпапку. Я буду обновлять ответ соответственно. Благодарность!
RNanoware
Может ли кто-нибудь добавить / объяснить типы полей с помощью моделей sorce, как yesno имеет исходную модель Magento / config / model / config / source / yesno
nagendra