# JavaScript Hooks

To modify the behavior of existing fields, Carbon Fields exposes several hooks.

See @wordpress/hooks (opens new window) for more details about the usage of the hooks module.


# Containers

# carbon-fields.register-container-type

Used to filter the container settings. It receives the type of the container, the rendering context and the React component used to render the content as arguments.

# carbon-fields.<type>.<context>

Used to modify the container's component. It receives the original Container component and returns a new wrapped component.

Note: The context can be classic or gutenberg.


# Fields

# carbon-fields.register-field-type

Used to filter the field settings. It receives the type of the field, the rendering context and the React component used to render the field as arguments.

# carbon-fields.field-wrapper

Used to modify the field's wrapper component. It receives the original FieldWrapper component and returns a new wrapped component.

# carbon-fields.field-wrapper.<context>

Same as carbon-fields.field-wrapper but for a specific context.

Note: The context can be metabox or block.

# carbon-fields.field-edit

Used to modify the field’s edit component. It receives the original FieldEdit component and returns a new wrapped component.

# carbon-fields.field-edit.<context>

Same as carbon-fields.field-edit but for a specific context.

Note: The context can be metabox or block.

# carbon-fields.<type>.<context>

Same as carbon-fields.field-edit but for a specific field type and context.

Note: The context can be metabox or block.

# carbon-fields.<type>.validate

Used to validate a required field. It receives the field and the value and returns a string that contains the validation error.