Params
Parameter types define the input controls that users interact with when configuring elements in WPBakery Page Builder.
This section provides detailed documentation for every parameter type available in WPBakery Page Builder, from simple text fields to complex custom controls.
Text & content
Textfield
Single-line text input for short text entries.
Textarea
Multi-line plain text input for longer content.
Textarea HTML
WYSIWYG editor for rich HTML content editing.
Textarea safe
Sanitized textarea for safe HTML input.
Textarea raw HTML
Base64 encoded raw HTML/JS code storage.
Textarea ACE
Code editor with syntax highlighting.
Exploded textarea
Line-separated values converted to arrays.
Exploded textarea safe
Safe version of exploded textarea input.
Selection & options
Dropdown
Select from predefined list of options.
Checkbox
Boolean true/false toggle control.
Radio
Single selection from multiple options.
Button group
Visual button selection interface.
Toggle
On/off switch control for boolean values.
Media & assets
Attach image
Single image upload from media library.
Attach images
Multiple image upload and selection.
Iconpicker
Icon selection from available icon libraries.
Visual & design
Colorpicker
Color selection with visual picker interface.
CSS editor
Visual CSS design options panel.
Font container
Typography and font settings control.
Google Fonts
Google Fonts library selection.
Animation style
Animation presets and effects selector.
Links & URLs
WordPress integration
Posttypes
WordPress post type selector dropdown.
Taxonomies
Taxonomy term selection control.
Widgetised sidebars
Sidebar/widget area selector.
Advanced controls
Param group
Repeatable groups of parameters.
Autocomplete
Auto-suggest input with search.
Number
Numeric input with min/max constraints.
Range
Slider control for numeric values.
Tag input
Comma-separated tags input field.
Linked fields
Connected parameter values control.
Utilities
El ID
Element ID field for custom anchors.
Gutenberg
Gutenberg block integration support.
Hidden
Hidden input for storing internal values.
Using parameters
Parameters are defined in the params array when registering an element with vc_map():
vc_map([
'name' => __('My Element', 'textdomain'),
'base' => 'my_element',
'params' => [
[
'type' => 'textfield',
'heading' => __('Title', 'textdomain'),
'param_name' => 'title',
'value' => '',
'description' => __('Enter a title', 'textdomain')
],
[
'type' => 'colorpicker',
'heading' => __('Color', 'textdomain'),
'param_name' => 'color',
'value' => '#000000'
]
]
]);
Common parameter options
All parameter types support these common options:
type- The parameter typeholder- HTML tag name where the attribute value is displayed in backend edit mode (default: hidden input)class- CSS class added to theholderHTML tagheading- Label displayed to the userparam_name- Unique identifiervalue- Value for the parameterdescription- Help textgroup- Tab/group organizationweight- Display order (higher = shows first)dependency- Conditional visibilityadmin_label- Display in element titleedit_field_class- CSS class for field widthparam_holder_class- CSS class for the param wrapper in the edit element modalsave_always- Force saving the param value to the shortcode even if it equals the default or is emptycallback- JavaScript function callback attached to the window object (e.g.,['after_add' => 'vcChartParamAfterAddCallback'])settings- Array of type-specific configuration options (varies per param type, see individual param docs)custom_markup- HTML template used to render the element in the backend editor. See vc_map() → custom_markupdeprecated- Version in which the param was deprecated
Next steps
- Browse individual parameter documentation for detailed usage examples
- Check Element Development for implementing parameters in your elements
- Review Developer Tutorials for advanced parameter techniques