Type
magento2-module
A collection of custom config types for Magento 2 system configuration development.
magento2-module
OSL-3.0
None
None
None
None
None
No more fiddly "Yes/No" dropdowns in your configuration.
This Magento 2 extension offers a selection of custom "Field Types" and "Frontend Models" for use in Magento 2 extensions with a system configuration section.
multiselect
select
select
with YesNo
source modeltime
but hides the 'seconds' selection.Requires PHP >=7.0 and Magento >=2.2
composer require netresearch/config-fields-m2:*
In your Magento 2 extension's etc/adminhtml/system.xml
, enter the class name of one
of the Types at Netresearch\ConfigFields\Model\Type
.
For example:
<field id="logging"
type="Netresearch\ConfigFields\Model\Type\Checkbox">
<label>Logging</label>
<button_label>Record messages to Magento logs</button_label>
<comment>You must have global logging activated for this to work.</comment>
</field>
<field id="loglevel"
type="Netresearch\ConfigFields\Model\Type\Radioset">
<label>Logging Level</label>
<depends>
<field id="logging">1</field>
</depends>
<source_model>Some\Module\Model\Config\Source\LogLevel</source_model>
<comment>The log level Debug may result in very large log files.</comment>
</field>
Custom frontend model blocks may use additional configuration values transmitted via <attribute>
nodes:
For example:
<field id="plugin-info">
<frontend_model>Netresearch\ConfigTypes\Block\InfoBox</frontend_model>
<attribute type="logo">Some_Module::images/logo.svg</attribute>
<attribute type="body_template">Some_Module::system/config/infoBoxBody.phtml</attribute>
<attribute type="header_template">Some_Module::system/config/infoBoxHeader.phtml</attribute>
<attribute type="view_model">Some\Module\ViewModel\Adminhtml\System\InfoBox</attribute>
<attribute type="background">#ffcc01</attribute>
</field>
The available attributes are documented inside the Block source code file.
This extension is provided "as is", the author does not offer or promise any support. However, feel free to open a GitHub issue for any problems you encounter.