Fodo Docs
Forms

Field Settings

Configure individual field options and validation

Field Settings

When you select a field on the canvas, its settings appear in the right panel. Each field type has specific options, but many settings are shared across all fields.

Common settings

These settings are available for most field types:

Label

The text displayed above the field. This is what users see.

  • Best practice: Use clear, concise labels
  • Example: "Email Address" not "Please enter your email address here"

Placeholder

Gray text shown inside the field before the user types. Disappears when the user starts typing.

  • Best practice: Show example format or helpful hint
  • Example: "john@example.com" for an email field

Description

Help text displayed below the field. Use for additional context or instructions.

  • Example: "We'll never share your email with third parties."

Required

When enabled, the form cannot be submitted without this field having a value.

  • Required fields show an asterisk (*) next to the label
  • Validation message appears if the user tries to submit without filling it

Field ID

A unique identifier for the field. Auto-generated but can be customized.

  • Used in shortcodes, conditional logic, and integrations
  • Must be unique within the form
  • Only letters, numbers, and underscores allowed

Validation settings

Control what input is accepted.

Text length

Available for text and textarea fields:

SettingDescription
Min LengthMinimum characters required
Max LengthMaximum characters allowed

Number range

Available for number fields:

SettingDescription
Min ValueSmallest number accepted
Max ValueLargest number accepted
StepIncrement value (e.g., 0.01 for currency)

Pattern matching

For text fields, you can specify a regex pattern:

^[A-Za-z]+$    # Letters only
^[0-9]{5}$     # Exactly 5 digits (ZIP code)
^#[0-9A-Fa-f]{6}$  # Hex color code

Provide a custom error message when using patterns, as the default browser message may be confusing.

Appearance settings

Width

Control how much horizontal space the field takes:

OptionDescription
Full100% width (default)
Half50% width, place two fields side by side
Third33% width, place three fields in a row

CSS classes

Add custom CSS classes to the field wrapper. Useful for:

  • Custom styling
  • JavaScript targeting
  • Theme integration

Multiple classes separated by spaces: my-class another-class

Hide label

Visually hides the label while keeping it accessible for screen readers. Useful when the placeholder provides sufficient context.

Conditional logic (Pro)

Show or hide this field based on other field values.

See Conditional Logic for full documentation.

Default values

Pre-fill the field with a value. Useful for:

  • Suggesting common answers
  • Passing data via URL parameters
  • Setting reasonable defaults

Dynamic default values

Use these placeholders for dynamic values:

PlaceholderValue
{user_email}Logged-in user's email
{user_name}Logged-in user's display name
{post_id}Current post/page ID
{post_title}Current post/page title
{url}Current page URL
{date}Current date

Example: Pre-fill user email for logged-in users:

Default Value: {user_email}

Field-specific settings

Each field type has additional settings. See the individual field documentation: