Admin UI for creating custom post types and custom taxonomies for WordPress

cms, cpt, custom post types, post, types


Custom Post Type UI

Admin UI for creating custom post types and custom taxonomies for WordPress

Core Developers:


Custom Post Type UI (CPTUI) provides an easy to use interface to create and administer custom post types and taxonomies for WordPress.

CPTUI does NOT handle display of registered post types or taxonomies in your current theme. Its goal is to simply register them use.



  • Fixed: issue with default values for new parameters regarding menu/nav menu display for taxonomies.
  • Fixed: typo in support area.


  • Added: "Export" tab on editor screens for quick access to post type or taxonomy export pages.
  • Added: CPTUI notices are now dismissable via a button on the right side.
  • Added: "Get code" link to registered post types and registered taxonomies listings.
  • Added: More amending of incorrect characters in post type and taxonomy slugs. Latin standard alphabet only. Sorry.
  • Added: New post type template stack reference from recent WordPress versions.
  • Added: Side warning notification if post type or taxonomy slug has been edited.
  • Added: Display About page upon activation of plugin.
  • Added: Link below ads regarding getting them removed via purchase of CPTUI Extended.
  • Added: No need to refresh page after initial save to see post types and taxonomies in menu.
  • Added: Taxonomy support for show_in_menu and show_in_nav_menus.
  • Fixed: Further improved labels for information text on inputs.
  • Fixed: Hide "choose icon" button for non-js users.
  • Fixed: Issue with misused "parent" label key that should be parent_item_colon.
  • Fixed: Missed show_in_menu_string parameter for "get code" area.
  • Fixed: Make sure taxonomies have required post type associated.
  • Fixed: "Edit" links in listings area now account for network-admin when needed, with CPTUI Extended.
  • Updated: Switch to dedicated dashicon for color consistency between applied admin color schemes.
  • Updated: Updated about page.
  • Updated: Further UI refinements to better match WordPress admin. Adapted styles found from metaboxes, including collapse/expand toggles.


  • Removed undefined index error for publicly_queryable in "Get Code" area. That parameter is targeted for 1.4.0 release.


  • Fixed: moved WDS-based services "ads" to within the plugin itself. Will not request remote resources.
  • Fixed: Better output formatting if WDS/Pluginize "ads" failed to load images.
  • Fixed: undefined variable error in cptui.js
  • Added: Newsletter subscription form to stay uptodate with Custom Post Type UI & Custom Post Type UI Extended news.
  • Added: Support page/FAQ info regarding Pluginize and recent sidebar developments.


  • Revert Changes for ajax/heartbeat API requests before post type registration. 3rd party or other plugins were breaking because post types were not registered.


  • Fixed: Logic issue with cptui js files loading where they weren't meant to.
  • Fixed: Required markers missing on required post type fields.
  • Fixed: Removed excess labels that are not used by WordPress core.
  • Added: New contributors to readme file. Welcome John and Ryan.
  • Updated: New screenshot from 1.3.0 release. Moved to assets folder so users will no longer download as part of CPTUI.
  • Updated: Better prevention of running our code during ajax/heartbeat api requests.


  • Fixed: Logic issue for default values of public parameter for taxonomies added in 1.3.0.


  • Added: "CPTUI_VERSION" constant and deprecated "CPT_VERSION".
  • Added: "Public" parameter for taxonomies
  • Added: "View Post Types" and "View Taxonomies" tabs at top of add/edit screens.
  • Added: Better prevention of potential duplicate slugs in new post types and taxonomies.
  • Added: Current theme's textdomain as output in get code textareas.
  • Added: Fill in singular and plural label fields if none provided. WordPress does not auto-fill these.
  • Added: For developers: plenty of extra hooks all over for customization needs.
  • Added: Javascript-based prevention of spaces and special characters for post type and taxonomy slugs.
  • Added: Legend tag support to admin UI class.
  • Added: Minified copies of our JavaScript and CSS. Define SCRIPT_DEBUG to true to use non-minified versions.
  • Added: New post type and taxonomy labels provided by WordPress 4.3 and 4.4 releases.
  • Added: Notes to post type and taxonomy edit screens about WordPress core's post types and taxonomies.
  • Added: Taxonomy slug update ability with preserved term association.
  • Added: Title, Editor, and Featured Image now checked by default for new post types.
  • Added: "Show in Quick Edit" taxonomy parameter available in WP 4.2
  • Added: Promo spots on add/edit screens for other products from WebDevStudios.
  • Fixed: Need to visit permalinks page to flush rewrite rules after creating new post type or taxonomy.
  • Fixed: Missing REST API based parameters in "Get Code" output.
  • Updated: Increased accessibility coverage.
  • Updated: Revised how tabs are added to pages so 3rd party developers can add their own tabs.
  • Updated: Improved string consistency in our UI helper notes. Props @GaryJones
  • Updated: Tested on WordPress 4.5
  • Updated: Cleaned up admin footer area for social links.
  • Updated: Moved all localization work to Translation packs


  • Added: new CPTUI_VERSION constant to match naming of other current constants.
  • Added: CPTUI_VERSION constant to cptui.css string for cache busting.


  • Added: new CPTUI_VERSION constant to match naming of other current constants.
  • Added: CPTUI_VERSION constant to cptui.css string for cache busting.


  • Fixed: copy/paste error with admin css. Props hinaloe.


  • Fixed: Missing admin menu icon for some browsers.
  • Fixed: Undefined index notices for post type screen.


  • Fixed: Undefined index notices for custom taxonomies and new fields from 1.2.0


  • Added: Support for show_in_nav_menus parameter for post types.
  • Added: Support for taxonomy descriptions.
  • Added: Message on listings page if no post types or taxonomies are available.
  • Added: Note regarding 'public' parameter not being true by default for WordPress but is for CPTUI.
  • Added: Individual post type and taxonomy output for "Get Code" area.
  • Added: Fallback values for post type/taxonomy select input and get code area if no plural label provided.
  • Added: Support for custom query_var strings for post types.
  • Added: Support for show_in_rest and rest_base for post types and taxonomies for the upcoming WordPress REST API.
  • Added: Template hierarchy files to listings tables for user reference.
  • Added: Form labels in more areas to help with accessibility and usability.
  • Added: Fieldset method to Admin UI class for easily adding fieldset output.
  • Added: Debugging tab for use with CPTUI support.
  • Updated: Minimum version required. Now WordPress 4.2.
  • Updated: Heading tags match accessibility changes in WordPress 4.3.
  • Updated: Moved page title for some pages above tabs.
  • Updated: Textdomain now matches repo slug.
  • Updated: Added Visual Composer questions/answers to support section.
  • Updated: Added question/answer regarding spaces in post type slugs
  • Updated: Changed help icons to a Dashicon help icon.
  • Fixed: Support for YARPP plugin.
  • Fixed: Prevent potential issues with AJAX requests and our scripts/styles


  • Bumping WordPress compatibility version only. No other changes involved.


  • Change export value to plural label for taxonomies.
  • Properly select a post type or taxonomy after deleting an existing value.
  • Updated screenshots
  • Added target="_blank" attribute to one of the inline help links for Menu position. Thanks @JulieKuehl
  • Fixed potential XSS issue.


  • Re-add post type and taxonomy select buttons and only display for non-js users.


  • Simplified UI with regards to clicking amount.
  • Auto selecting of first available post type or taxonomy in Edit tab.
  • Switch to post type or taxonomy upon selection within Edit tab.
  • Return of a list of CPTUI-registered post types and taxonomies.
  • Post type slug update capability.
  • Added function reference 3rd party link to support area.
  • New hooks in edit screen for custom content display on screen.
  • String updates.
  • UI field option for custom "Supports" parameters from other plugins. Example: Yet Another Related Posts Plugin.
  • Updated help/support section with another reference tool.
  • Trim extra spaces potentially left behind in text inputs.
  • Rearranged menu listing slightly to remove duplicate naming.
  • GitHub repo has GitHub Updater ( compatible copy of CPTUI version that is available on


  • Register taxonomies at a higher priority than post types.


  • Preventive measures for potential XSS security issues with add_query_arg()


  • Change priority of post type registration function that was causing rewrite issues for many.
  • Fix issues with help text spots not showing up for some post type fields. Props pedro-mendonca.
  • Fix logic issue with PHP's empty() function and CPTUI 0.9.x saved settings.


  • Explicitly set the post type and taxonomy rewrite slugs as the registered slug if no custom ones provided.
  • Prevent cptui.js from loading where it is not needed.
  • Fixed undefined index notice for post type rewrite_withfront.
  • Repopulated labels when none provided and post type or taxonomy mentioned in default label.
  • Fix for import/export get code tab and hierarchical taxonomies


  • Fixed incorrect boolean order for hierarchical taxonomies and default value.
  • Fixed missing closing div tags.
  • Default menu position to null instead of empty string.
  • Undefined index notice cleanup.
  • Remove unnecessary hook.


  • Fix logic error regarding string "0" evaluating to false when checked for not empty.
  • Fix for taxonomy with_front boolean value not evaluating correctly.
  • Fix for taxonomy hierarchical boolean value not evaluating correctly.
  • Fix for post type has_archive.
  • German translation updates. If you speak/read German, myself and the translator would LOVE to have feedback on this.
  • Internationalization string changes after feedback from German translation work.
  • Minor issue with link html being stripped from UI field explanation.
  • Better apostrophe/single quote support in label fields.


  • Fix issue with checked checkboxes for post type associations for taxonomies.
  • Fix "Get Code" spot related to post type associations for taxonomies.
  • Update some text strings after localization feedback.
  • Fix typos in textdomain for two spots.
  • Updating progressing translation files.
  • Fix value for with_front parameter.
  • Fix error in boolean type for map_meta_cap.
  • Fix missing use of query_var slug if present for taxonomies.


  • Fix issues with taxonomy transfer and registration.
  • Fix issue with taxonomy "show admin column" evaluating to true regardless of setting.
  • Prefix our "help" class to prevent conflict with other plugins that use just "help".
  • Fix issue with menu position values not being obeyed.
  • Fix hook names inside taxonomy update function.
  • Fix potentially empty parameter with taxonomies and "Get Code" output.
  • Added PHP "undefined index" notice prevention for some parameters.


  • CPTUI has been given a new UI!
  • Separated out post type and taxonomy creation to their own screens.
  • Added import/export ability for post type and taxonomy settings.
  • Added a Help/Support Screen.
  • Added/Updated available parameters for post types and parameters.
  • Updated i18n and translation files.
  • Added Confirmation prompts before deleting post types and taxonomies.
  • Added actions and filters for 3rd party customization.
  • Added function that automatically converts 0.8.x and down settings to new setting arrangement.
  • Changed how settings are stored so that post types and taxonomies are in named array indexes.
  • Bug fixes not mentioned above.



  1. Upload the Custom Post Type UI folder to the plugins directory in your WordPress installation
  2. Activate the plugin.
  3. Navigate to the "CPTUI" Menu.

Admin Installer

  1. Visit the Add New plugin screen and search for "custom post type ui"
  2. Click the "Install Now" button.
  3. Activate the plugin.
  4. Navigate to the "CPTUI" Menu.

That's it! Now you can easily start creating custom post types and taxonomies in WordPress

Frequently Asked Questions

Please see the Help/Support section for FAQs and start a new thread on the support forums for Custom Post Type UI if none of those answer your question.

Other Notes

Import/Export functionality amended from original contribution by Ben Allfree.

Outside contributors that we wish to thank