Field Types
Field Types Overview
Field types in Smart Add-Ons — 10 built-in options from simple checkboxes to file uploads, image swatches, and custom price inputs.
Checkbox
A single yes/no toggle. Ideal for gift wrapping, warranty, engraving add-ons. Can have a price.
Checkbox Group
Multiple checkboxes from one field. Each option can have its own price. Use for "select all extras that apply."
Radio
Pick one option from a list. Best for sizes, materials, or finishes. Each option has its own price.
Image Select
Visual image swatches as a pick-one selector. Upload an image per option. Great for color, style, or design choices.
Dropdown
A standard select dropdown. Use when options are numerous. Each option can have its own price.
Text
Single-line text input. Use for names, short messages, or reference numbers. Supports character limits and required validation.
Textarea
Multi-line text input for longer content like instructions, gift messages, or special requests.
Date
A date picker. Use for event dates, engraving dates, or delivery scheduling. Supports min/max date constraints.
Custom Price
Let the customer enter a custom price (e.g., for a donation or tip). Supports min/max value constraints.
File Upload
Let customers upload a file (artwork, logo, photo). Files are stored privately; admin downloads them from the order page.
Common field settings
Every field type shares the following settings:
| Setting | Description |
|---|---|
| Label | The visible field label shown to the customer |
| Required | If checked, the customer must fill this field before adding to cart |
| Tooltip / Description | Helper text shown below the field |
| Pricing | Fixed, percentage, formula, flat fee, or per-quantity (see Pricing docs) |
| Conditional Logic | Show or hide this field based on another field's value |
Custom field types (developer)
Developers can register custom field types by implementing the FieldTypeInterface and registering via the saue_register_field_types action hook. See the Hooks & Filters reference.