Filter By:

A Guide to Using WordPress Custom Post Types

Wordpress Custom Post Types

What’s WordPress? Well, if you’ve ever talked about making a website, you’ve probably heard of it. This content management system has been around since 2003 and is the most popular tool for creating websites, used by over 60 million sites today.

But we’re here to talk about something specific in WordPress: custom post types. These are special kinds of posts that you can add to your WordPress site. The cool thing is, that you can do this without getting into complicated coding stuff. You can use custom code or plugins to create these special posts.

So, why should you care about custom post types? They’re a big deal for folks who want to make their websites do more than just regular blog posts. Maybe you want to showcase your art, list events, or display products. Custom post types make it all possible.

In this guide, we’ll walk you through everything you need to know about using them effectively. 

Understanding Custom Post Types in WordPress

When you think of a WordPress post, you might picture a regular blog post with text, images, and maybe a video. 

But WordPress is more versatile than that. It allows you to create different types of content, not just regular posts. These special content types are known as “custom post types.”

Here’s a breakdown of the various post types in WordPress:

  • Posts: These are your typical blog posts, used for regular articles.
  • Pages: Pages are static and are often used for things like the homepage, about us, and contact pages.
  • Attachments: These are files like images or documents attached to your posts or pages.
  • Revisions: WordPress keeps track of changes you make to your content.
  • Navigation Menus: These help you structure your website’s menu.
  • Custom CSS: It allows you to add your own custom styles to your website.
  • Changesets: These are collections of changes you make to your site’s design.

Now, while these default post types are handy, they do have some limitations. They’re quite general and might not suit all your needs. That’s where custom post types come in. They’re like custom-made content types that you can create to fit your website’s specific goals. Whether it’s showcasing your portfolio or managing events, custom post types offer flexibility and organization that regular posts or pages might not provide.

Creating Custom Post Types

Creating custom post types in WordPress doesn’t have to be a daunting task. There are various methods to do it, catering to different levels of technical expertise. Let’s explore two approaches: coding and plugins.

Coding or plugin

Coding Custom Post Types

If you’re comfortable with coding and want full control, you can create custom post types manually. This method involves writing code and adding it to your theme’s functions.php file or creating a custom plugin. While it offers maximum flexibility, it may be challenging for those unfamiliar with coding.

Plugins for Custom Post Types

For a more user-friendly approach, you can use plugins like “Custom Post Type UI” or “Toolset Types.” These plugins simplify the process and don’t require coding skills. Here’s how to create a custom post type using “Custom Post Type UI”:

  • Install and activate the “Custom Post Type UI” plugin.
  • Go to your WordPress dashboard and find the “CPT UI” menu item.
  • Click on “Add/Edit Post Types” to create a new custom post type.
  • Fill in the necessary details like the post type’s name, labels, and settings.
  • Save your changes, and your custom post type is ready to use.

Registering Post Types Correctly

Whether you choose the coding or plugin method, registering post types correctly is crucial. This ensures that WordPress understands how to handle your custom post type. Incorrect registration can lead to issues and may not display your content as intended.

By following the steps provided by your chosen method and paying attention to details like labels and settings, you’ll successfully create custom post types that align with your website’s goals. Custom post types offer the flexibility to organize and display content exactly how you want it, enhancing your website’s functionality.

Custom Post Type Templates

WordPress empowers you to create specialized templates for custom post types, enhancing your website’s content display. Let’s dive into how this works:

Custom Post Type Template Options

WordPress has been supporting custom templates for single and archive displays of custom post types since Version 3.0. Here are the key custom post type templates:

  • single-{post-type}.php: This template is used when a visitor requests a single post from a custom post type. For example, if you have a custom post type named “acme_product,” WordPress will look for single-acme_product.php to display individual posts.
  • archive-{post-type}.php: When visitors request a custom post type archive, this template comes into play. For instance, archive-acme_product.php is used for displaying an archive of posts from the custom post type “acme_product.” If this specific template is missing, WordPress falls back to archive.php.
  • index.php: If none of the custom post type-specific templates is present, WordPress defaults to index.php for display.

Understanding the Template Hierarchy

WordPress follows a template hierarchy to decide which template to use. It goes through available templates in order and uses the first one it finds. So, if you want a custom template for your “acme_product” custom post type, start by copying the single.php file, renaming it as single-acme_product.php, and making your edits.

But if you prefer not to create custom templates, WordPress will utilize existing theme files, such as archive.php and single.php, along with index.php.

Creating Single and Archive Templates

To create custom single and archive templates for your custom post type, follow these steps:

  • For single product posts, duplicate single.php and rename it as single-acme_product.php (replace “acme_product” with your post type name). Customize this new file as needed.
  • For archives of your custom post type, duplicate archive.php and rename it as archive-acme_product.php. Make the necessary adjustments.

These templates allow you to tailor the presentation of your custom post type content to suit your specific needs. Alternatively, you can use functions like is_post_type_archive() to check for archive pages or post_type_archive_title() to display post type titles without creating custom templates.

Custom Fields and Taxonomies

Custom fields and taxonomies are valuable tools for enhancing how you manage and organize your custom post types. Let’s break down their significance:

Custom fields and taxonomies

Custom Fields

Custom fields serve as storage for extra information related to a specific post. For instance, if you’re managing products, you can use custom fields to store details like prices, dimensions, or customer ratings. These fields are ideal for unique data associated with individual posts.


Taxonomies, on the other hand, are like labels that group posts together based on shared characteristics. Think of them as categories or tags. They are perfect for information that applies to multiple posts. For instance, a recipe website may use taxonomies to categorize recipes into “Desserts,” “Appetizers,” and “Main Courses.”

Utilizing Custom Fields and Taxonomies

You can use plugins like Advanced Custom Fields or Toolset Types to add custom fields to your custom post types. These plugins make it easy to define and manage custom fields for your posts, enhancing their functionality and display.

Taxonomies have a unique feature: they come with archives. In WordPress, each taxonomy and its terms have their dedicated archive pages. For example, consider a real estate site with a “Property Type” taxonomy containing terms like “Houses,” “Offices,” and “Apartments.” When you visit a URL like, you’ll see a list of all properties categorized as “Apartments.” Toolset, for instance, allows you to design these archive pages effortlessly.

By understanding the roles of custom fields and taxonomies, you can effectively organize and present information on your custom post type site, providing a seamless user experience.

Displaying Custom Post Types

So, you’ve created custom post types to store various data on your WordPress site. Now, let’s dive into how to effectively display these custom post types for your audience. There are three primary methods for doing this:

1. Using the Default Archive Template

By default, WordPress provides an archive template that can display your custom post types. However, this method may not offer much flexibility in terms of design and layout.

2. Using Custom Templates for Archive Pages and Single Post Entries

For a more customized look and feel, you can create your own templates for both archive pages and single post entries. This approach allows you to tailor the display to your specific needs, ensuring a unique user experience.

3. Querying Custom Post Types on the Landing Page Alongside Regular Posts

You can also integrate custom post types seamlessly into your website’s landing page alongside regular posts. This method provides a cohesive browsing experience for your visitors.

Leveraging the WP_Query Class

To make all of this happen, you’ll want to get familiar with the WP_Query class. It’s a powerful tool that lets you retrieve custom post type data from the WordPress database. This class is commonly used to fetch custom post type data outside of the default loop, allowing you to create multiple loops on a single page.

Here’s a simple example of how to use the WP_Query class to construct a loop for retrieving custom post types:

Custom post type code 1

Remember, theme compatibility is crucial for proper display. Ensure that your WordPress theme supports custom post types to provide a seamless and user-friendly experience. 

By mastering the WP_Query class and employing the right display method, you can showcase your custom post types exactly where you want them on your website.

Advanced Custom Post Type Features

Custom post types offer a world of possibilities beyond the basics. Let’s delve into some advanced features that can take your WordPress website to the next level:

1. Hierarchical Post Types

By enabling hierarchical custom post types, you can create a parent-child relationship between posts. This feature is valuable for organizing content logically. For example, you can have a “Recipes” custom post type with categories like “Desserts” and “Main Courses.” 

Each category can have its own subcategories. To enable this, set ‘hierarchical’ => true when registering your custom post type.

2. Front-End Submission

Allowing users to submit content from the front end of your website can boost user engagement. With custom post types, you can create forms for users to submit posts, making it easy to build user-generated content. For instance, a real estate website can let users submit property listings. Plugins like WP User Frontend or Gravity Forms can help implement this feature.

3. Custom Post Type Relationships

Sometimes, your content isn’t limited to standalone posts. You may need to establish relationships between different post types. For instance, on an e-commerce site, you might want to associate “Products” with “Reviews.” To do this, you can use plugins like Pods or Toolset Types to create custom relationships.

Enabling Advanced Features

To enable hierarchical post types, add ‘hierarchical’ => true when registering your custom post type:

Custom post type code 2

For front-end submission and custom post type relationships, consider using plugins tailored to your specific needs. These features enhance user interaction, content organization, and overall functionality, making your WordPress site more dynamic and engaging.

Plugins for Custom Post Types

Enhancing custom post type functionality in WordPress is made easier with the help of plugins. These tools extend the capabilities of your website, offering more flexibility and customization options. Here’s a selection of popular WordPress plugins that can supercharge your custom post types:

Popular Plugins for Custom Post Types:

  • Custom Post Type UI: A user-friendly plugin for effortlessly creating and managing various custom post types and their taxonomies.
  • Toolset Types: This robust plugin provides comprehensive custom post type and custom field management, enabling you to build complex data structures.
  • Pods – Custom Content Types and Fields: Pods offers a versatile solution for creating custom post types, fields, and relationships. It’s highly flexible and developer-friendly.
  • Meta Box: A versatile toolkit for building custom post types and custom fields focusing on simplicity and performance.

Plugins for Custom Fields and Taxonomies:

These plugins not only streamline the creation and management of custom post types but also enhance the functionality of custom fields and taxonomies, allowing you to build dynamic and feature-rich WordPress websites.

Best Practices and Tips for WordPress Custom Post Types

To maximize the benefits of custom post types and maintain a well-functioning WordPress site, follow these best practices and tips:

Plugin Compatibility

Before adding any plugin to your site, verify its compatibility with your WordPress version and other active plugins. Incompatible plugins can lead to conflicts and hinder the functionality of your custom post types.

Plugin Updates and Support

Opt for plugins that are consistently updated and backed by active developer support. This ensures you’ll receive necessary bug fixes, security patches, and compatibility enhancements over time.

Performance Impact

Monitor the performance impact of plugins on your website diligently. An abundance of plugins or resource-intensive ones can result in sluggish site speeds. Regularly evaluate and fine-tune your plugin selection to sustain peak performance. Aim for pages to load in less than two seconds to ensure a seamless user experience.

Optimizing Performance and SEO

To make the most of your custom post types and ensure your WordPress site runs smoothly while ranking well in search engines, consider these essential optimization practices:

  • Use a caching plugin to boost page load times and reduce server load.
  • Implement lazy loading for images and videos to improve site speed.
  • Utilize SEO plugins to optimize custom post type content for search engines.
  • Set up XML sitemaps for custom post types to improve their discoverability by search engines.
  • Monitor site speed, mobile-friendliness, and SEO rankings regularly to identify areas for improvement.

Adhering to these best practices and optimization tips ensures your custom post types contribute positively to your website’s functionality, performance, and SEO.

Enhance Your WordPress Site with Custom Post Types

Custom post types are an invaluable resource for WordPress site owners looking to organize content, streamline functionality, and improve user experiences. You can unlock a world of possibilities by strategically positioning your business within the WordPress ecosystem.

Don’t wait to harness the power of custom post types. Start using them today to transform your WordPress site and provide an exceptional online experience. For further insights into SEO and website optimization, download our free whitepaper, “SEO Fundamentals Guide: How to Get Found Online,” courtesy of The Academy. 

Now, elevate your WordPress game and position your business for success in the online space.

Share this:
About Luke Wagner:

As Sanctuary’s Website Developer, Luke Wagner works behind the scenes on our websites to ensure that they are functioning as they should. But if they aren’t, rest assured that he’s up for the challenge to find a quick solution. He is extremely motivated to keep developing his skills and growing in the world of web design and development.

Related Articles:

Articles, News, Videos, Podcasts and more! Subscribe for our Academy newsletter for updates and future benefits.

Security Icon

Your privacy is a priority. View our Privacy Policy.

The Academy is a service of Logo