Developers Corner:
Custom Post Types in EE4

What are Custom Post Types?

WordPress can hold and display many different types of content. A single item of such a content is generally called a post, although post is also a specific post type. Internally, all the post types are stored in the same place, in the ‘wp_posts‘ database table, but are differentiated by a column called ‘post_type’. A Custom Post Type (CPT) is nothing more than a regular post with a different ‘post_type’ value in the database. The post type of regular posts is post, pages use page, attachments use attachment and so on. More information Custom Post Types can be found at WordPress:

By default, Event Espresso provides full-page Event and Venue CPT archives and single page templates.

How are Custom Post Types used in Event Espresso 4?

Custom Post Types allow developers to integrate Event Espresso into your theme and reuse attendee data as you would other post data. This gives developers the ability to create great looking  customizable event designs, by giving you the tools they need to easily integrate EE4 core components into themes and reuse attendee data as you would with other post data (please see our EE4 Custom Post Types documentation for more information).

In addition, the EE4 front-end templating systems provides flexible “template parts” that can be used by theme developers for custom themes. In order to maintain compatibility with more themes, these template parts have only basic styles by default but you can easily make them more fancy with custom CSS (see our Theming in Event Espresso 4 post for more information).

The EE4 specific template parts include:

  • Event Details (description)
  • Event Datetimes
  • Event Tickets
  • Event Venues
  • Event Venue Location
  • Event Venue Detail (excerpt)
  • and more!
Many of the standard custom post type data is also available via standard WordPress Custom Queries (e.g. featured image, title, comments, etc.).

CPT Types: Events, Venues, and Contacts

All EE4 CPT data includes normal post data including:

  • Title
  • Description
  • Tags
  • Categories
  • Featured Image
  • Commenting
  • Excerpt
  • Custom Fields
  • Slug
  • Author

This data can be queried and displayed in themes along with other post data.

CPT Archive Pages

As with other Custom Post Types, EE4 is packaged with default event archives, single event pages, venue archives, and single venue page templates. You can copy these templates to your theme folder so that the Event Espresso pages inherit your theme’s post page layouts and styles. See our post on Theming in Event Espresso 4 for more information.

Draft Event Pages

Draft events allow you to build your event page over time without publishing it to your website.

We know you can’t always build and publish an event at once. EE4 will allow you to save events as “draft” status so that you can save your progress and return later to edit and publish your event.

EE4 will automatically save the events you have in-progress as “drafts”, plus you can save them as a “draft” as you go.

Schedule Events to be Published

You can even schedule to publish your event at a later date and time.

WordPress enables you to schedule when posts and pages are published. That functionality extends into Event Espresso’s CPT pages so you can announce your event at just the right moment.

Easy Categorization of Events

Do you have several different types of events such as free and paid, conference speakers and breakout sessions, exercise classes of all kinds? EE4 makes it easy categorize your events and allows your attendees to find what they’re looking for faster.

Plugin and Theme Compatibility

Event Espresso 4 offers much better theme compatibility, because all of your EE4 Events, Venues, and Contacts are CPTs. Event Espresso CPTs can also integrate with other CPT plugins such as: Custom Post Type UI, TinyMCE Advanced, Advanced Custom Fields, etc.

Are you a WordPress theme developer? Want to see how Event Espresso 4 integrates with your theme? Request access to the Event Espresso Core (4.0+) GitHub repository and get acquainted with the premier event registration system for WordPress.

We also have additional Event Espresso developer documentation at

Share a Reply or Comment

Your email address will not be published. Required fields are marked *

Need help with Event Espresso? Create a support post in our support forums

Event Espresso