Sidebar
The sidebar field allows you to select one or multiple sidebars. This field has several settings that can be displayed as a: simple select dropdown, checkbox list, or beautiful select dropdown with select2 library.
Screenshots​




Settings​
Besides the common settings, this field has the following specific settings, the keys are for use with code:
Name | Key | Description |
---|---|---|
Placeholder | placeholder | The placeholder for the select box. The default is "Select a sidebar". Applied only when the field type is a select field. |
Field type | field_type | How the sidebars are displayed? See below. |
This field inherits the look and field (and settings) from other fields, depending on the field type, which accepts the following value:
Field type | Description | Settings inherited from |
---|---|---|
select | Simple select dropdown. | Select |
select_advanced | Beautiful select dropdown using the select2 library. This is the default value. | Select advanced |
checkbox_list | Flatten list of checkboxes which allows to select multiple items. | Checkbox list |
radio_list | Flatten list of radio boxes which allows to select only 1 item. | Radio |
This is a sample field settings array when creating this field with code:
[
'name' => 'Sidebar',
'id' => 'sidebar',
'type' => 'sidebar',
'field_type' => 'select_advanced',
'placeholder' => 'Select a sidebar',
],
Data​
This field saves sidebar ID(s) in the database.
If "Multiple" is not set, a single sidebar ID is saved in the database. Otherwise, the field saves multiple sidebar IDs in the database, where each sidebar ID is stored in a single row in the database with the same meta key (similar to what add_post_meta
does with the last parameter false
).
If the field is cloneable, then the value is stored as a serialized array in a single row in the database.
Template usage​
Display widgets for the selected sidebar:
<div class="sidebar">
<?php rwmb_the_value( 'my_field_id' ) ?>
</div>
Checking if the selected sidebar has widgets and displaying it:
<?php
$sidebar_id = rwmb_meta( 'my_field_id' );
if ( is_active_sidebar( $sidebar_id ) ) {
dynamic_sidebar( $sidebar_id );
}