General settings
Core fields
Name
Yes
Machine-readable identifier for the form. Used internally and in shortcodes. Must be alphanumeric.
Label
No
Human-readable title shown above the form on the front end. Falls back to Name when left blank.
Key
—
Auto-generated 8-character random string. Acts as a stable shortcode handle; can be regenerated without affecting saved data.
Action
Yes
Determines what happens when the form is submitted (see below).
Successful outcome message
No
Text shown in a green alert on successful submission. Defaults to "The form was successfully submitted".
Redirect after submission
No
URL to redirect to after a successful submission. Leave blank to stay on the same page.
Form actions
The action you choose determines which additional fields appear and how the submitted data is processed.
Sends the submitted data to one or more recipients via email. Configure recipients, subject, body, and template on the Email settings tab.
No further fields appear here; all email configuration lives on its own settings tab.
Ajax
Runs a custom JavaScript handler after the form is submitted via AJAX.
Required field — Ajax action: the name of the WordPress wp_ajax_{action} hook to call on the server side.
Optional field — Ajax handling: JavaScript executed after the AJAX call resolves. The data variable holds the server's response:
Custom
Posts the form to a custom URL instead of the default ACPT handler.
Required fields:
Custom action — the target URL.
Method —
POSTorGET.
Post Management (Fill Meta)
Saves submitted values directly into ACPT meta fields attached to a post, term, or user.
No additional code is needed. Configure the target in the Meta fields mapping section (see below).
Fill Table (CCT)
Inserts or updates a record in a Custom Content Type table directly from the front end.
Required field — Table to fill: the CCT table that will receive the submitted data.
Optional field — Record: pin the form to a specific existing record. When set, submitting the form always updates that record. When left blank, a new record is inserted on each submission unless a record ID is supplied at runtime via the shortcode.
You can pass a record ID dynamically at render time using the record_id shortcode attribute:
Record ID resolution priority (highest → lowest):
An
IDfield present in the submitted form data.The Record setting saved in the form's general settings.
The
record_idshortcode attribute.
If none of the above resolves to a record, a new row is inserted.
See Edit an existing CCT record for a complete walkthrough.
PHP
Executes a custom PHP snippet after submission. ACPT overwrites $_POST and $_FILES with sanitized form data before running your code:
Meta fields mapping
Regardless of the action, this section lets you bind meta field groups to the form builder so that their fields are available as form inputs.
Belongs to — choose whether to bind meta fields from a Custom Post Type, a Taxonomy, an Option page, or Users.
Find — select the specific post type, taxonomy, or option page.
Target (optional) — pin the form to a specific post, term, page, or user. When left blank, ACPT creates a new record on submission (for Post Management action) or writes to the current context.
Post status (Post Management / CPT only) — the WordPress status to assign when a new post is created (e.g.
publish,draft).
After choosing the source, the list of available meta fields appears. Check the ones you want to expose in the form builder.
Click Save to persist the configuration, then open the Manage link on the forms list to open the form builder and arrange the selected fields.
Last updated