The field types, conditions, and validators you can put on a template, a datastore, a site setting, or a form.
Custom fields turn a built-in object into whatever your site needs. Every field has a Type that decides what it stores and how an editor supplies it. A field may also carry one Condition, which decides whether the editor is asked for it at all, and any number of Validators, which constrain what may be saved.
These are definition types, and they are a different vocabulary from the Liquid objects a template reads. Defining a field of Type text means a template reads a text value; putting that same type on a Form means the template renders a text_field control. Each type page links both.
Start with Defining Custom Fields for the properties every field shares, then Field Types to choose what a field stores, then add a Condition or Validators where the editing experience needs them. Which template should define a field is covered in Where Custom Fields Belong, and how a template reads the saved value is covered in Field Values.
-
Defining Custom Fields
Where field definitions live, the properties every field shares, and when to use a group or a fieldset.
-
Field Types
Every Type a field definition may use, what it stores, and where it is valid.
-
Field Conditions
The conditions that decide whether a field is shown and validated.
-
Field Validators
The validators that constrain what may be saved in a field.