The Themify Post Type Builder (PTB) is a plugin for creating Custom Post Types (CPTs) and their display templates. It is easy to work with and has some advanced features. In this post, I want to do an overview of the features so that you can get a sense of whether it would fit your needs.
There is also a video, if you prefer. The video provides a walk-through of how to use the PTB by creating two related custom post types and their display templates. This post focuses on an overview of the features and more general information.
Themify offers a number of themes and plugins. The themes are very stylish and many of them sport unique display features targeting particular niches. The Ultra theme is their general purpose flagship theme that includes a number of pre-designed templates, or “skins,” that are similar to the templates available for some page builders or themes. Themify themes include the Themify builder plugin that is integrated into the themes. It is a capable builder, but it can be disabled if you prefer Elementor or Beaver Builder.
The Themify builder can be used with any theme, not just those from Themify. I use the Themify Ultra theme in the video, but near the end, I switch to the Astra theme to show that the functionality and Content Display are not theme dependent.
The plugin itself is $49, or you can purchase it with an annual or lifetime club membership. There is basic documentation for all of the plugins and themes and a very active support forum.
Pros: The Themify Post Type Builder is one of the easiest options available for creating CPTs and creating display templates. It has a relationship field for linking CPTs together. The Template Display builder is very nice. It is kept up to date, uses a GPL license, and there is a lifetime purchase option. Support is good.
Cons: There is no conditional logic. Occasional glitches. There is not a large community for user assistance.
PTB & PTB Addons
There is a base PTB plugin and 5 addons. There are a number of custom field types provided. In the base PTB Builder plugin you get:
- Link Button
- Radio Button
- Select List
- Text Area
PTB Extra Fields addon adds these additional field types:
- Progress bar
- Rating (author and visitor options)
- Date and
The PTB Relation addon provides
- Relation field type
It also adds the ability to create Display Templates for the relation (more on that below).
PTB Map View addon works with the Map field type. In your Custom Post Type you include an address field and this addon allows you to plot that on a Google map.
The PTB Submissions addon allows you to created front-end submission forms for your CPTs. In addition to some basic functionality, such as email notification when a form is submitted, there are features allowing site Admins to manage submissions of all users and for users to have an area to manage their own submissions.
The PTB Search addon provides search and filtering capabilities. You can setup searches based on fields from the CPT and you can also filter using their categories and tags.
Creating Custom Post Types and Display Templates
If you have used other plugins for creating Custom Post Types then the Post Type Builder edit screen will seem familiar. The options are pretty standard.
One of the main features that sets the Themify Post Type Builder apart from other options is the ability to create templates for your Custom Post Types. This is the easiest interface for creating Display Templates that I’ve used. All of the fields are available at the top (in purple) and you can create rows and columns for the layout.
When you expand the fields there are options specific for that field type. Also, there is the option to display the field “inline”, which is used to float the fields next to each other in the row. That ability to float fields inline made it easy to create, for example, the row of post meta (post date, title, author, rating, and category). Here is the expanded view of the rating field:
This builder interface is used throughout the Post Type Builder screens for creating the Display Templates for CPTS, Relations, Submission forms, and Search forms. The ability to create templates for relations is pretty cool. For example, in the companion video I setup a “Book Review” and related “Book Author” CPT. I use the Relation Template for the Book Author CPT to provide a book author box that gets included on the single review page. Here is a screenshot of the Book Review single page. I’ve highlighted the “author box”, which is the relation template:
The interface is similar when you create the archive view, but there are archive layout options:
And here is a screenshot of the archive display I created:
Here is the same archive view after switching to a vanilla install of the Astra theme:
Some Other Features
I tested the Search and Filter functionality. The documentation on it was a bit sparse, but I was able to puzzle it out. You create the layout for the search section using the template editor.
You get some options on how you would like the field filters to show:
I chose the drop down select box. When you save, there is a shortcode that you insert in your page where you want the search filters to show. For my Book Review CPT I added a category of “Genre” and assigned the books to different Genres. Here is a screenshot of a page with this search filter added. Selecting different Genres from the drop down filters the list of all of the book reviews.
Some of the other features of the PTB are:
- The option to show images in a light box when clicked.
- The ability to export and import your work, in case you want to use it on other sites.
- And WPML support for multilingual sites.
Summary and Conclusions
As you can see from the above discussion of the features, some of them are more advanced than your vanilla plugins, such as CPT-UI, provides. Custom Post Types are an advanced WordPress function. For the most part, there is a focus on keeping this advanced functionality as easy as possible.
Some of the choices to make things easy might impinge on the overall flexibility. For example, instead of a “URL” custom field type, there is a “Link Button” field type. This makes it easier for simple use, but a more generic link field might have allowed the field to be used more widely, such as for image links. I didn’t find the date picker tool as flexible as some other ones I’ve used and I hit a couple of minor snags during testing, such as how to set the image size for the archive template, but was able to easily work around these issues.
I’ purchased a membership for the Lifetime Club back in 2015 and have seen the company in action since that time. I used the Ultra theme for over a year on one of my sites, and liked how it looked and the customization options. As I started to manage more sites, I used MainWP and ManageWP for keeping them up to date. Back then, Themify only offered updates via their own admin panel and so the theme could not be updated using these site management tools. Last year, in response to customer requests, the team offered the option to update through the regular update channels.
I noticed that once in a while there are small glitches when new versions come out, but that these are quickly handled by support. Speaking of support, in my experience, the support team is responsive and willing to help investigate issues and offer CSS snippets for customers who want a certain look.
I am impressed by the creativity of the Themify develoers. The layout builder functionality for creating Display Templates is a huge boon for users and it greatly simplifies what can otherwise be a difficult side of using CPTs. It was as easy or easier to create templates with the Themify PTB as when using Beaver Themer or Elementor Pro. I’ve used Toolset extensively for creating CPTs and Display Templates. The Themify Post Type Builder does not cover all of the edge cases and advanced “enterprise ready” functionality of Toolset, but it is easier to use and packs a surprising number of advanced features that would make it an attractive choice for projects of simple to medium complexity.
I hope you’ve found the video and this article helpful. Thank you for reading and let me known in the comments if you have any questions.