Fields turn pages into records
Custom fields give each entry named pieces of information instead of a block of formatted text. A content type gives those entries their own list, their own pages and their own place in the admin. Together they let a site list, sort and later filter entries, and let a theme change without rebuilding every entry. If you have more than a handful of pages with the same structure, this is usually the right model.
- Write one finished entry as a field list.
- Decide which fields visitors will search or filter by.
Keep definitions in files
ACF can write each field group to a JSON file and sync it back, and fields can also be registered in PHP code. Either way the definition lives with the rest of your code, so a staging copy and the live site cannot quietly differ. A definition kept only in the dashboard exists in one database, which is the usual reason fields are missing after a copy.
- Create the JSON folder before saving field groups.
- Prove that a fresh copy loads the fields with no manual import.
Escape what you print
Values entered by editors are printed into pages, so each must be escaped for where it appears. ACF's documentation advises escaping values from get_field before output. Templates must also cope with empty optional fields without printing empty wrappers. These are the two most common template faults.
- Test filled, partly filled and empty entries.
- Review each template line that prints a value.
Paid options and their boundaries
The content-type job (published test price from GBP 650) builds one type with up to twelve fields, one taxonomy, an archive and a single-entry template. Search and filters on the list are a separate job (from GBP 590), and the two are combined in a directory project (from GBP 1,900). They do not include importing existing entries beyond twenty in the project, visitor submission forms, translation or a licence. Prices are untested proposals and payment follows the agreed checks.
- Send a field list with types and one example value each.
Sources and limits
- ACF documentation: local JSON Checked 2026-10-11.
- ACF writes field group definitions to JSON files in an acf-json folder and can sync them to the database, giving version control over field settings.
- ACF documentation: register fields via PHP Checked 2026-10-11.
- Field groups can be registered in code with unique keys; code-registered groups are not editable on the admin screen.