Glossary
Custom Post Type
WordPress ships with two primary content types: posts and pages. Custom Post Types (CPTs) extend that system so you can create distinct content types with their own admin menus, URL structures, and field sets. A portfolio site might have a "Projects" CPT. A restaurant site might have a "Menu Items" CPT. An agency site might have "Case Studies," "Team Members," and "Services."
CPTs can be registered in code using register_post_type() or through plugins like Custom Post Type UI (CPT UI). They’ve been a cornerstone of flexible WordPress development for well over a decade, and most non-trivial WordPress sites use at least a few of them.
The WordPress CPT Ecosystem
The CPT system in WordPress has some rough edges that developers learn to work around. Custom fields for CPTs typically require a separate plugin like Advanced Custom Fields (ACF) or Pods. The admin UI for CPTs is functional but can feel disconnected, especially when editors are managing several content types that need to relate to each other. Taxonomies can be attached to CPTs, but the relationships are somewhat rigid.
None of this is a criticism — CPTs have powered millions of successful sites. But it does explain why developers often feel like they’re stitching things together rather than working in a cohesive system.
How CPTs Map to Statamic Collections
In Statamic, collections are the equivalent of Custom Post Types, and they’re more integrated from the start. A collection is a defined group of entries with its own blueprint (field configuration), URL routing, and organization settings. You don’t need a separate plugin for custom fields — the field system is built into Statamic’s fieldtype architecture and configured directly on the collection’s blueprint.
When migrating a WordPress site with CPTs, the process involves mapping each CPT to a Statamic collection, then mapping the ACF or meta field structure to a Statamic blueprint. This is usually the most detail-oriented part of a migration, particularly when CPTs have complex field groups or relationships. See What about my WordPress custom fields and ACF data? for specifics.
Statamic also supports taxonomies for categorizing entries across collections, similar to how custom taxonomies work in WordPress. See taxonomy for more on that.
The WordPress to Statamic Migration service covers CPT migration as part of the full content architecture translation.