Overview
Custom Post Types lets you create and manage WordPress custom post types.
How It Works
Admin Optimizer saves your post type definitions and registers them with WordPress.
When to Use It
Use it when a site needs structured content types such as portfolios, listings, resources, or testimonials.
How to Enable
Go to Admin Optimizer > Custom Fields & Types and enable Custom Post Types.

Setup Guide
- Go to Admin Optimizer > Custom Fields & Types.
- Toggle the switch for Custom Post Types.
- Configure the post type singular/plural names, slug, and whether it is public.
- Recommended default configuration
Set as public, enable “Show in REST API” for block editor support, and select standard supports like title, editor, and thumbnail.
Step-by-step setup example
- Open Custom Fields & Types > Custom Post Types and add a new post type.
- Enter the plural name, singular name, and post type slug.
- Check the “Show in REST API” box.
- Choose supported editing features.
- Attach taxonomies if needed.
- Save the post type.
What the user should test after setup
Refresh permalinks. Create a new post in the custom post type, save it, and view it on the frontend.
Common mistakes or things to verify
Forgetting to flush permalinks (Settings > Permalinks) after creating a post type, resulting in 404 errors on the frontend.
Verify it’s Working
A new menu item matching your plural name should appear in the WordPress admin sidebar. Clicking it should allow you to view and add new items.
Settings
The module includes settings for labels, visibility, REST support, rewrite behavior, menu behavior, supports, taxonomies, archives, capabilities, and other post type options.
- Basics: plural name, singular name, slug, description, public status, and hierarchy.
- Advanced Options: frontend search, public queries, admin UI, navigation menus, REST API, menu position, menu icon, supported editor features, taxonomies, archive behavior, rewrite rules, and query var.
- Capabilities: use default post capabilities or define custom capability mappings.
- Additional Labels: customize the text WordPress shows across admin screens, menus, list tables, and editor messages.
Quick Reference
| Setting | Description | Safe to Leave Default? |
|---|---|---|
| Post Type Key | The unique identifier for the post type. Must be lowercase with underscores or hyphens. | No |
| Plural Name | The plural name shown in the admin menu (e.g., “Products”, “Services”). | No |
| Singular Name | The singular name used in singular contexts (e.g., “Product”, “Service”). | No |
| Public | Whether the post type should be publicly queryable and visible in the admin UI. | No |
| Show in Admin Menu | Whether to show a menu item in the admin sidebar. | Yes |
| Menu Position | The position in the admin menu (lower numbers appear higher). | Yes |
| Menu Icon | The icon shown next to the menu item. | Yes |
| Supports | Which standard WordPress features (title, editor, thumbnail, etc.) should be enabled for this post type. | Yes |
| Has Archive | Whether to create an archive page for this post type. | Yes |
| Show in REST API | Whether the post type should be accessible via the REST API. | Yes |
| Publicly Queryable | Whether external users can query this post type. | Yes |
| Show UI | Whether to show the post type in the admin UI. | Yes |
| Show in Nav Menus | Whether the post type can be added to navigation menus. | Yes |
| Hierarchical | Whether the post type should support parent/child relationships (like pages). | Yes |
| Rewrite | Whether to enable pretty permalinks for this post type. | Yes |
| Capability Type | The capability type to use (default is ‘post’ or ‘page’). | Yes |
Notes
Changing a post type slug after content exists can affect URLs. Plan names and rewrite settings carefully.