Custom Field Groups

Create custom fields for your posts, pages, and custom post types using a visual builder. No coding required — just define your fields and they appear in the post editor.

Use Cases

  • Add product specifications (dimensions, weight, material) to WooCommerce products
  • Create recipe fields (ingredients, cook time, servings) for food blogs
  • Build real estate listing data (bedrooms, bathrooms, square footage)
  • Store team member info (job title, social links, bio) for staff pages

How It Works

  1. Navigate to Switchboard → Custom Field Groups
  2. Create a new field group
  3. Add fields (text, textarea, select, etc.)
  4. Assign the group to specific post types
  5. Fields appear in the post editor when editing those post types

Where to Find It

Location: Switchboard → Custom Field Groups in your WordPress admin menu.

Creating a Field Group

Step 1: Name Your Group

Give your field group a descriptive name like “Product Details” or “Recipe Information”. This name appears as the metabox title in the post editor.

Step 2: Add Fields

Click “Add Field” and configure:

SettingDescription
Field LabelHuman-readable name shown in editor
Field KeyUnique identifier for storing data (auto-generated)
Field TypeType of input (text, textarea, select, etc.)
PlaceholderHelper text shown in empty fields
RequiredWhether the field must be filled

Step 3: Assign to Post Types

Select which post types should display this field group. Options include:

  • Posts
  • Pages
  • Custom post types (Products, Team Members, etc.)

Available Field Types

TypeDescriptionBest For
TextSingle line inputNames, titles, short values
TextareaMulti-line inputDescriptions, summaries
NumberNumeric inputPrices, quantities, measurements
EmailEmail address inputContact information
URLWebsite address inputLinks, social profiles
DateDate pickerEvents, deadlines
SelectDropdown menuPredefined choices
CheckboxYes/No toggleBoolean options
ImageMedia library pickerPhotos, icons

Example: Recipe Fields

Create a “Recipe Details” field group:

Field LabelTypeOptions
Prep TimeTextPlaceholder: “15 minutes”
Cook TimeTextPlaceholder: “30 minutes”
ServingsNumber
DifficultySelectEasy, Medium, Hard
IngredientsTextareaRequired: Yes
InstructionsTextareaRequired: Yes
VegetarianCheckbox
Recipe PhotoImage

Displaying Custom Fields

In Theme Templates

<?php
// Get a single field value
$prep_time = get_post_meta(get_the_ID(), 'prep_time', true);
echo '<p>Prep Time: ' . esc_html($prep_time) . '</p>';

// Get checkbox value
$is_vegetarian = get_post_meta(get_the_ID(), 'vegetarian', true);
if ($is_vegetarian === 'yes') {
    echo '<span class="badge">Vegetarian</span>';
}

// Get image
$image_id = get_post_meta(get_the_ID(), 'recipe_photo', true);
if ($image_id) {
    echo wp_get_attachment_image($image_id, 'medium');
}
?>

In Page Builders

Most page builders can display custom fields:

  • Elementor: Dynamic Tags → Post Meta
  • Beaver Builder: Field Connections
  • Gutenberg: Use the Post Meta block or dynamic blocks

Field Group Management

Editing Groups

  1. Go to Switchboard → Custom Field Groups
  2. Click on a group to edit
  3. Add, remove, or modify fields
  4. Save changes

Deleting Groups

Deleting a field group removes the editor interface but doesn’t delete the data stored in posts. Data remains accessible and will reappear if you recreate the group with the same field keys.

FAQ

Where is the field data stored?Field data is stored as post meta in the WordPress database. Each field key becomes a meta key, making data accessible via get_post_meta().
Can I use the same field group for multiple post types?Yes! When creating a field group, select all the post types where you want it to appear.
Will my data be lost if I delete a field group?No. The data stays in your database. Only the editor interface is removed. Recreate the group with the same field keys to access it again.
Can I create repeater or flexible content fields?This module provides standard field types. For complex repeater fields, consider using ACF (Advanced Custom Fields) alongside Switchboard.
How do I display fields on the frontend?Use get_post_meta($post_id, 'field_key', true) in your theme templates, or use your page builder’s dynamic field features.

Use consistent, descriptive field keys like “recipe_prep_time” rather than generic names like “field1”. This makes your data easier to work with in templates.

This module provides core custom field functionality. For advanced features like conditional logic, repeaters, or flexible content layouts, consider complementing with ACF.

PRO

Get access to all 147 modules with a single license

Upgrade to Pro