Bricks Builder
Embed Core Forms in Bricks layouts with a native element and pull submitted values into Bricks templates with a dynamic data token.
Element name: core-forms-form
Class: Core_Forms\Builders\BricksFormElement
Source: src/builders/class-bricks-form-element.php, src/builders/class-builder-integrations.php
The element and token register automatically when Bricks is active. No settings screen is involved.
The Core Form Element
Open a page in Bricks and search for Core Form in the elements panel (General category). Drag it into the layout and pick a form.
Content Tab
| Control | Type | Description |
|---|---|---|
| Form | Select | Choose any published Core Forms form. Until a form is selected, the canvas shows a "Select a Core Form." placeholder |
| Theme override | Select | Use form setting (default), Force theme, or Disable theme |
The theme override changes only this placement. Force theme loads the Core Forms form theme even if the form has it turned off; Disable theme suppresses it so the form inherits your Bricks/site styles. The form's own setting is untouched.
Style Tab
| Control | Type | Description |
|---|---|---|
| Field gap | Number (with units) | Sets the --cf-spacing CSS variable on the rendered .core-form, controlling the space between fields |
All other styling can be done with regular Bricks controls on the element wrapper, or with your own CSS targeting .core-form.
The {cf_submission:field} Dynamic Token
Core Forms registers a Core Forms submission field dynamic tag (group: Core Forms). Use it anywhere Bricks accepts dynamic data:
{cf_submission:email}
{cf_submission:name}
{cf_submission:any_field_name}
The part after the colon is the field's name attribute (letters, numbers, hyphens, and underscores).
How the token resolves
The token renders the matching value from a submission object supplied by the cf_bricks_dynamic_submission filter:
add_filter( 'cf_bricks_dynamic_submission', function ( $submission, $post, $context ) {
return cf_get_submission( 123 ); // your logic for picking the submission
}, 10, 3 );
- If no submission is supplied, or the field is missing, the token renders an empty string.
- Array values (checkbox groups, multi-selects) render as a comma-separated list.
- The token also works inside longer text content, not just standalone fields.
This is intended for building submission detail templates, confirmation views, and similar layouts where your code decides which submission is in context.
Notes
- The element renders the same markup as the
[core_form]shortcode, so validation, conditional fields, and actions behave identically. - Forms are listed by title in the Form dropdown; all forms are available regardless of status filters in the admin list.
- For Elementor sites, see Elementor. For general embedding options, see the Integrations Overview.
Troubleshooting
- Element missing from the panel: Bricks must be the active theme (or active on the site). The element only registers when the Bricks element classes exist.
- Placeholder instead of a form: No form is selected, or the selected form was deleted. Re-select a form in the Content tab.
- Token prints nothing: No
cf_bricks_dynamic_submissionfilter is returning a submission for that context, or the field name in the token doesn't match the form field'snameattribute.