Skip to content

Latest commit

 

History

History
89 lines (73 loc) · 2.35 KB

button-group.md

File metadata and controls

89 lines (73 loc) · 2.35 KB

Button group

Button group field renders a set of buttons. It's a single-choice field, much like the Radio field. Supports initial checked or disabled attributes.

Example configuration

...
array(
    'title' => 'My button group title',
    'id' => 'button-group-option',
    'desc' => 'Short description for the field',
    'place' => array(
        'page' => 'my-options-page',
        'tab' => 'main',
    ),
    'type' => 'button_group',
    'choices' => ['First label', 'Second label', 'Third label']
),
...

This will produce the following

It will use the label text as the value. If you wish to separate values from labels use the following syntax for the choices key:

...
'choices' => array(
    array(
        'value' => 'First value',
        'label' => 'First label',
    ),
    array(
        'value' => 'Second value',
        'label' => 'Second label',
    ),
    array(
        'value' => 'Third value',
        'label' => 'Third label',
    ),
)
...

checked and disabled

If checked or disabled keys are specified, they'll be respected. E.g:

...
'choices' => array(
    array(
        'value' => 'First value',
        'label' => 'First label',
    ),
    array(
        'value' => 'Second value',
        'label' => 'Second label',
        'checked' => true,
    ),
    array(
        'value' => 'Third value',
        'label' => 'Third label',
        'disabled' => true,
    ),
)
...

will result in the following

Notice that the second option is checked on initial page load and the third option is not clickable.

Params

Name Type Description
type string button-group (required)
id string Unique ID that will be used to retrieve the value (required)
place array Specifies where (page and tab) this option will be rendered
title string Shows a heading to the left of the field
desc string Shows a description text (can have HTML)
choices array Kind of required, but will not render anything if no radio choices are provided. Can be an array of strings or an array of arrays with value and label keys. See examples above.