Field Forge ships with 32 field types organized into seven categories. Most types — including every relational field, the basic and choice fields, and oEmbed — are available in the free version; the compound types (Repeater, Group, Flexible Content, Clone), Gallery, and PHP Blocks are Pro. Below is the complete reference with usage notes, configuration options, and ACF compatibility notes for developers migrating from Advanced Custom Fields.
Single-line text input. Optional max length, placeholder, prepend/append (for prefixes like “$” or suffixes like “/month”), and default value.
ACF equivalent: text
Returns: string
Multi-line text input with configurable row count. Optional max length and placeholder. Returns plain text (no HTML formatting).
ACF equivalent: textarea
Returns: string
Numeric input with min, max, and step values. Optional prepend/append for units. Validates as number on save.
ACF equivalent: number
Returns: number
Slider input with min, max, and step. Visual alternative to Number for bounded values. Great for ratings, opacity, and percentage-like fields.
ACF equivalent: range
Returns: number
Email input with client and server-side validation. Useful for contact fields and user records.
ACF equivalent: email
Returns: string
URL input with validation. Supports relative and absolute URLs. Optional protocol requirement.
ACF equivalent: url
Returns: string
Masked password input. Values are stored encrypted (not plain text). Use for API keys, secret tokens, or any sensitive string.
ACF equivalent: password
Returns: string (decrypted on read by authorized users)
Media library picker with preview. Returns image metadata (ID, URL, alt, sizes). Configurable return format: Image Array, Image URL, or Image ID.
ACF equivalent: image
Returns: array / string / integer depending on return format
File upload/picker for any file type. Configurable allowed types (PDF, DOC, ZIP, etc.) and max size. Returns file metadata.
ACF equivalent: file
Returns: array / string / integer
TinyMCE rich text editor with media upload. Full WordPress editor features: headings, lists, links, images, embeds. Returns HTML.
ACF equivalent: wysiwyg
Returns: string (HTML)
Paste any URL (YouTube, Vimeo, Twitter/X, Spotify, SoundCloud, etc.) for automatic embed. WordPress’s built-in oEmbed discovery handles the preview.
ACF equivalent: oembed
Returns: string (embed HTML)
Multi-image selection with drag-drop reordering. Returns an array of image metadata objects.
ACF equivalent: gallery
Returns: array of image arrays
Dropdown with single or multiple selection. Options defined as key=value pairs. Supports default value and placeholder text.
ACF equivalent: select
Returns: string / array (multi-select)
Multiple choices from a list. Optional toggle-style layout. Returns an array of selected values.
ACF equivalent: checkbox
Returns: array
Single choice from a list. Optional inline layout. Returns the selected value.
ACF equivalent: radio
Returns: string
Boolean toggle with custom “on” and “off” labels. Returns true or false.
ACF equivalent: true_false
Returns: boolean
Visual radio buttons rendered as a button group. Same logical behavior as Radio but different presentation.
ACF equivalent: button_group
Returns: string
Multi-select from any post type. Search, filter, and drag-to-reorder. Returns an array of post objects or IDs.
ACF equivalent: relationship
Returns: array of WP_Post objects / array of IDs
Single post selector with taxonomy filters. Returns the selected post object or ID.
ACF equivalent: post_object
Returns: WP_Post object / integer
Select any published page, post, or custom post type. Returns the URL to the selected page.
ACF equivalent: page_link
Returns: string (URL)
Select terms from any taxonomy. Options: single or multi-select, display as dropdown / checkbox / radio / multi-select.
ACF equivalent: taxonomy
Returns: array of term objects / array of IDs / string
Select a user with role and capability filters. Multi-select supported.
ACF equivalent: user
Returns: WP_User object / array of WP_User objects
Date selection with configurable display format (MM/DD/YYYY, etc.) and return format. Uses jQuery UI datepicker.
ACF equivalent: date_picker
Returns: string
Time selection with 12 or 24 hour format. Configurable display and return format.
ACF equivalent: time_picker
Returns: string
Color selection with alpha channel support. Returns a color value (hex, rgba).
ACF equivalent: color_picker
Returns: string
Group fields into tabbed interface in the post editor. Not a value-storing field — it’s a layout helper.
ACF equivalent: tab
Returns: nothing (layout only)
Collapsible field group. Users can expand/collapse to focus on specific sections of a long field group.
ACF equivalent: accordion
Returns: nothing (layout only)
Informational text displayed in the editor. Not a field — used for instructions, warnings, or help text.
ACF equivalent: message
Returns: nothing (display only)
Dynamic row-based fields. Add any combination of sub-fields to a row template, users add/remove/reorder rows at will. Supports nested repeaters.
ACF equivalent: repeater
Returns: array of row arrays (or use have_rows() / the_sub_field() loop)
Full repeater feature →
Nested group of related fields under a single label. Non-repeating (use Repeater for repeating groups). Useful for logical organization of related data.
ACF equivalent: group
Returns: associative array
Multiple row layouts per field. Each row can be a different layout (e.g., “hero,” “features,” “testimonials,” “CTA”). Users pick which layout to use for each row.
ACF equivalent: flexible_content
Returns: array of row arrays with acf_fc_layout key indicating layout
Full flexible content feature →
Reuse an entire field group inside another. Define shared fields once, clone wherever needed.
ACF equivalent: clone
Returns: depends on cloned fields
Register Gutenberg blocks that render via PHP callback with access to custom fields. Uses acf_register_block_type() (ACF-compatible) or fieldforge_register_block_type() (native).
acf_register_block_type([
'name' => 'feature-card',
'title' => 'Feature Card',
'render_callback' => 'my_feature_render_callback',
'category' => 'theme',
'icon' => 'star-filled',
]);
Field Forge supports every field type ACF has, plus a few extras via custom field groups. Migration from ACF preserves every field type 1:1 — no field types get “lost in translation” during import.
Field Forge has a filter-based API for registering custom field types. Developers can add their own types by hooking into fieldforge/field_types/register:
add_filter('fieldforge/field_types/register', function($types) {
$types['lottie'] = [
'label' => 'Lottie Animation',
'render' => 'my_lottie_field_render',
'save' => 'my_lottie_field_save',
];
return $types;
});
Your custom field types appear in the visual builder’s field type picker and integrate with Field Forge’s storage, import/export, and REST API.
Get Field Forge — from $35/year →
Most field types are included in the free version. The compound types (Repeater, Group, Flexible Content, Clone), Gallery, and PHP Blocks are unlocked on every paid plan.