Title: BBA Custom Types
Author: amitworx
Published: <strong>August 17, 2026</strong>
Last modified: August 17, 2026

---

Search plugins

![](https://ps.w.org/bba-custom-types/assets/banner-772x250.png?rev=3651792)

![](https://ps.w.org/bba-custom-types/assets/icon-256x256.png?rev=3651792)

# BBA Custom Types

 By [amitworx](https://profiles.wordpress.org/amitworx/)

[Download](https://downloads.wordpress.org/plugin/bba-custom-types.1.0.1.zip)

 * [Details](https://wordpress.org/plugins/bba-custom-types/#description)
 * [Reviews](https://wordpress.org/plugins/bba-custom-types/#reviews)
 *  [Installation](https://wordpress.org/plugins/bba-custom-types/#installation)
 * [Development](https://wordpress.org/plugins/bba-custom-types/#developers)

 [Support](https://wordpress.org/support/plugin/bba-custom-types/)

## Description

BBA Custom Types lets site owners create and manage custom post types and taxonomies
without editing theme files or writing registration code.

Use it when your site needs structured content beyond posts and pages: projects,
testimonials, events, resources, product collections, locations, or any other content
model. The plugin gives you a clear admin workflow while keeping WordPress registration
keys, rewrite bases, and taxonomy relationships visible.

#### What you can do

 * Create and manage custom post types from one dashboard.
 * Create taxonomies and attach them to one or more custom post types.
 * Set singular and plural labels, public URL slugs, and frontend rewrite bases.
 * Choose whether a post type is public, has an archive, or is available in the 
   block editor and REST API.
 * Choose supported post features, including title, editor, excerpt, featured image,
   author, comments, revisions, custom fields, and page attributes.
 * Configure taxonomy visibility, hierarchy, REST API support, and attached post
   types.
 * Receive inline validation for duplicate or invalid slugs and internal keys before
   settings are saved.
 * Update the taxonomy attachment choices immediately after creating a post type,
   without refreshing the page.

#### How it works

BBA Custom Types stores your definitions in WordPress options and registers them
using WordPress APIs. A generated internal key such as `bbact_project` identifies
a post type in the database. Treat that key as permanent after content has been 
created. The public URL can be adjusted independently with the Frontend URL base
field.

The plugin does not send data to external services and does not require an account.

### Getting Started

#### Create a custom post type

 1. Go to BBA Custom Types and select **New Custom Post Type**.
 2. Enter a singular name, for example `Project`. The plugin fills related labels for
    you; you can adjust any of them before saving.
 3. Review the **URL slug**. This is used to generate the internal key on the first
    save.
 4. Optionally set a different **Frontend URL base**. For example, leave the key based
    on `project` but use `projects` for public URLs.
 5. Configure public visibility, archive support, REST API support, menu position, 
    and supported post features.
 6. Save the custom post type, then use its new menu in WordPress admin to add content.

#### Create a taxonomy

 1. Select **New taxonomy** from the BBA Custom Types dashboard.
 2. Enter a singular name, for example `Project Type`.
 3. Choose whether it is hierarchical. Hierarchical taxonomies behave like categories;
    non-hierarchical ones behave like tags.
 4. Select the custom post types that should use this taxonomy.
 5. Save the taxonomy. The new taxonomy appears with the selected post types immediately.

#### Change a public URL base safely

Do not change the URL slug of a post type that already has content unless you intend
to create a different internal post type key. Instead, change **Frontend URL base**
to alter the public URL path while retaining the existing internal key and its posts.

After changing a rewrite base, go to Settings > Permalinks and select **Save Changes**
once to refresh WordPress rewrite rules.

## Screenshots

[⌊BBA Custom Types dashboard overview.⌉⌊BBA Custom Types dashboard overview.⌉[

BBA Custom Types dashboard overview.

[⌊Custom post type cards in the expandable content-types section.⌉⌊Custom post type
cards in the expandable content-types section.⌉[

Custom post type cards in the expandable content-types section.

## Installation

 1. In WordPress admin, go to Plugins > Add New > Upload Plugin.
 2. Upload the BBA Custom Types ZIP file and activate it.
 3. Open BBA Custom Types from the WordPress admin menu.
 4. Create a custom post type or taxonomy using the steps below.

## FAQ

### Does BBA Custom Types create both post types and taxonomies?

Yes. You can manage both from the same dashboard and connect a taxonomy to one or
more custom post types.

### What is the difference between URL slug, Frontend URL base, and Internal key?

The **URL slug** is used when first creating a type and helps generate its internal
key. The **Frontend URL base** controls the public permalink path. The **Internal
key** is the WordPress identifier, for example `bbact_project`; it should remain
unchanged after you create content.

### Why did my posts disappear after changing the URL slug?

Changing the URL slug can generate a new internal key. WordPress then treats it 
as a new post type, so posts associated with the old key are no longer shown in 
the new menu. Restore the original internal key to access that content again. To
change only public URLs, use Frontend URL base instead.

### Can I edit the generated key?

The key is generated on first save so you can verify the intended slug before creation.
Keep it stable after content exists, because WordPress uses it to associate posts,
taxonomies, and metadata.

### Why is my new frontend URL not working yet?

Save your permalink settings at Settings > Permalinks after changing a Frontend 
URL base. This refreshes WordPress rewrite rules.

### Does the plugin support the block editor and REST API?

Yes. Enable **Show in REST** for a custom post type or taxonomy to make it available
to the block editor and REST API.

### Does the plugin include a custom field builder?

Not yet. The plugin is designed to grow toward custom-field management, but version
1.0.0 focuses on custom post types and taxonomies.

### Does it delete my content when I deactivate the plugin?

No. Deactivation does not delete posts, terms, or saved definitions. The registered
types are inactive until the plugin is reactivated, so their content may not be 
accessible in the usual WordPress menus while it is inactive.

### Does the plugin use an external API or transmit site data?

No. BBA Custom Types works entirely within your WordPress installation and does 
not require an account or third-party service.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“BBA Custom Types” is open source software. The following people have contributed
to this plugin.

Contributors

 *   [ amitworx ](https://profiles.wordpress.org/amitworx/)

[Translate “BBA Custom Types” into your language.](https://translate.wordpress.org/projects/wp-plugins/bba-custom-types)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/bba-custom-types/),
check out the [SVN repository](https://plugins.svn.wordpress.org/bba-custom-types/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/bba-custom-types/)
by [RSS](https://plugins.trac.wordpress.org/log/bba-custom-types/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.1

 * Added the project website link to the plugin header.

#### 1.0.0

 * Initial public release.
 * Create and manage custom post types and taxonomies from a modern WordPress admin
   UI.
 * Added real-time validation, editable first-save slug workflow, modal editing,
   and live taxonomy attachment updates.

## Meta

 *  Version **1.0.1**
 *  Last updated **10 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.5 or higher **
 *  Tested up to **7.1**
 *  PHP version ** 8.0 or higher **
 * Tags
 * [content types](https://wordpress.org/plugins/tags/content-types/)[cpt](https://wordpress.org/plugins/tags/cpt/)
   [custom post types](https://wordpress.org/plugins/tags/custom-post-types/)[Custom Taxonomies](https://wordpress.org/plugins/tags/custom-taxonomies/)
   [taxonomy](https://wordpress.org/plugins/tags/taxonomy/)
 *  [Advanced View](https://wordpress.org/plugins/bba-custom-types/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/bba-custom-types/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/bba-custom-types/reviews/)

## Contributors

 *   [ amitworx ](https://profiles.wordpress.org/amitworx/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/bba-custom-types/)