14+ years building on WordPress / Replies in under 5 hours
WordPress 3 min read · Updated July 2026

How to Create a WordPress Custom Post Type Without Code

Photo of Ajay Khandal
Ajay Khandal
WordPress Developer
TL;DR

Yes, you can create a WordPress custom post type without writing code: Custom Post Type UI registers the post type through a settings screen, then Pods or ACF adds custom fields (pick one, not both, per post type), and CPT UI or Pods handles custom taxonomies the same way. Page builders and plugin-provided shortcodes cover most display needs without touching theme files. The no-code path stops working for custom relationships between post types, custom REST API exposure, and performance at real scale — that's when it's worth bringing in a developer instead.

You don’t need to touch functions.php or write register_post_type() to add a custom post type to WordPress — a plugin handles all of it through a settings screen. This is the no-code path, start to finish. If you’d rather write the code yourself, or want to understand what these plugins are doing under the hood, the code-first custom post types guide covers register_post_type(), WP_Query, and the REST API side in depth.

Creating the Post Type with Custom Post Type UI

Install and activate Custom Post Type UI (free, from the plugin directory), then go to CPT UI > Add/Edit Post Types. Set the post type slug (e.g. “book”), the singular and plural labels, and toggle the basics — public visibility, whether it has an archive page, and which core features it supports (title, editor, featured image). Save, and the new post type shows up as its own menu item in wp-admin immediately, with no code involved.

Adding Custom Fields Without Code

A post type on its own only gives you a title and a body — most real use cases need structured fields (price, SKU, event date). Two honest options:

  • Pods handles the post type, its fields, and its taxonomies all in one plugin, which is the simpler setup if you’re starting from scratch and don’t already have a fields plugin installed.
  • Advanced Custom Fields (ACF) pairs with CPT UI — CPT UI defines the post type, ACF defines the fields attached to it. This is the better choice if you’re already using ACF elsewhere on the site, since you’re not adding a second, overlapping tool.

Either way, avoid running Pods and ACF for the same post type — pick one field system per post type rather than mixing them, for the same reason you wouldn’t run two SEO plugins together. For a fuller comparison including Metabox as a third option, see ACF Pro vs Metabox vs Pods.

Adding Taxonomies Without Code

If your post type needs categories of its own — “Cuisine” for a Recipes post type, “Genre” for Books — both CPT UI and Pods let you register a custom taxonomy the same way as the post type itself: a settings screen, not code. Attach the taxonomy to your custom post type and it appears as a filterable field in the editor, the same way categories work for regular posts.

Displaying Your Custom Post Type Without Editing Theme Files

Most page builders (Elementor, Divi, Bricks) can pull in custom post type content dynamically once the post type exists — a dynamic list or grid widget pointed at your new post type, no template file required. Many custom-field plugins also ship a shortcode for embedding a specific entry or a filtered list directly in the block editor. Between the two, most display needs are covered without ever opening a PHP file.

When You’ll Need a Developer Anyway

The no-code path covers a real majority of use cases, but it has a ceiling: custom relationships between two post types (a Book linked to its Author post type, with data flowing both directions), custom REST API endpoints exposing the post type to a separate app, admin column customization, or performance tuning once a post type holds tens of thousands of entries. None of that is a settings-screen problem — that’s where custom plugin development is worth bringing in rather than fighting a no-code tool past what it’s built for.

Frequently asked questions

Yes. Custom Post Type UI registers the post type through a settings screen with no PHP required. Pair it with Pods or ACF for custom fields, and you can build a fully functional custom content type — post type, fields, and taxonomies — without ever opening functions.php.

Custom Post Type UI only registers post types and taxonomies — you need a separate plugin like ACF for custom fields. Pods handles post types, taxonomies, and fields all in one plugin, which is simpler if you're starting fresh, though CPT UI plus ACF is the better fit if you already use ACF elsewhere on the site.

No — running both for the same post type creates the same kind of conflict as running two SEO plugins together. Pick one field system per post type. Use Pods alone if you're starting fresh, or CPT UI plus ACF if ACF is already part of your setup.

In most cases yes. Page builders like Elementor, Divi, and Bricks can pull custom post type content into a dynamic list or grid widget directly, and many custom-field plugins provide a shortcode for embedding specific entries — both work without opening a PHP template file.

When you need something a settings screen can't do: custom relationships between two post types with data flowing both directions, a custom REST API endpoint for an external app, custom admin columns, or performance tuning once a post type holds tens of thousands of entries.

Photo of Ajay Khandal

Written by Ajay Khandal

I'm a freelance WordPress developer with 14+ years of experience building, fixing, and speeding up sites for businesses, agencies, and store owners across the US, UK, Europe, and Australia. I specialize in custom themes, WooCommerce, and performance — the kind of work that shows up as faster load times and fewer support tickets. No account managers, no outsourced tickets — you work directly with me, with replies typically inside 5 hours.

Work with me →