Data Centric WordPress Website Design


Good planning makes a website much easier to design and deliver, making you more profit and getting the website to the customer faster and more efficiently. Let’s ignore all the fluff and magic that makes up the appearance of the website, but instead take a look at the data structure underlying your design. We are going to look at how WordPress and Ultimatum give you the tools to make your website design Data Centric.

WordPress gives you some basic structures to use to organize your data; Posts and Pages, Attachments (media), Categories and Tags. Many site designers start off with just those structures, and often end up regretting this as the site becomes more complex and difficult to organize. The user sees the structure we make through menus and filters and, in a sense, it is there that the designer must start. The user wants to be able to find the information they seek as easily as possible, so why make it hard for them?

In the world of WordPress terminology, ‘taxonomy’ must be one of the least understood of words that website designers encounter. So, what is taxonomy, why does it matter and how can website designers use it in the WordPress they design? Let us first decide what not to do.

Posts are for blogging. If your site is a blog, then all well and good, use posts. If the site that your are building is (as is more typical) not only a blog, it perhaps has no blog at all, or has lots of other content in addition to the blog. I am going to look at a site that has no blog at all, but if your has this as well, add that in the normal way. So, before you get started, a little housekeeping in the general WordPress setup.

  1. Go to Settings -> Permalinks and set your site to use the ‘Post name’ option (so-called Pretty Permalinks).
  2. If you are not having a blog, you may well not want to have comments on the post content. Go to Settings -> Discussion and uncheck ‘Allow people to post comments on new articles’.
  3. Instead of organising media attachments in to ‘month- and year-based folders’, keep them in one folder by unchecking this option.
  4. Bring order to your attachments through attachment categories and tags. These are not the same as the core post categories and tags. This is a feature sorely missing from WordPress, but thankfully can be added with the free Attachment Taxonomies plugin.
  5. Make a new page called ‘Home’. It does not need any content right now.
  6. Go to Settings -> Reading and set ‘Front page displays’ to ‘A static page’ and select your newly made Home page.

At this point, I hope you have installed Ultimatum, as per this video:

and made a child theme and created a template:

It would also be useful to install Visual Composer and WonderLoops (WonderLoops requires that Visual Composer is installed) from the Ultimatum Toolset -> Plugins. This will allow you to add custom post fields using ACF Pro (Advanced Custom Fields Pro), which comes bundled with Wonderloops.

ultimatum-menu-cptSo, you are ready to start to make the structures for your data. Let us take as an example a Gig Guide website. It will have, at the least, 3 different types of data; Performers, Venues and Gigs. It might also have Tickets if the site was also selling these. In the WP Admin menu you will see your child theme name with the orange Ultimatum icon, and in the submenu you will see the ‘Custom Post Types’ option, where you can create and edit the CPTs that you make.

I made these three CPTs (Performers, Venues and Gigs), carefully deciding what fields I wanted in the editor for each. I advise not to have core categories or tags. I tend to have only these options ‘On’:

  • Title
  • Editor
  • Excerpt
  • Featured Image

All of the other options I tend to have ‘Off’. After making these CPTs, I then add taxonomies. For example, for Performers I would add a taxonomy named ‘Genre’. I also add some Custom Fields. For example, for the Gigs CPT my Custom Field group would have a date and time field. It would also have a Post type field to pick the Venue from, and another to pick the performer or performers from. My Performers CPT Custom Field group would have a repeater field to add band member names. And so it would build.

Taxonomies are things you want in menus and URLs. Fields contain data you would want to filter and sort by, and make data entry more organised and easier to do.

So, next time you have a website to build, think about data structure before you start, and save yourself time and make your task easier.

by Trevor Nelmes

Trevor is the head of support and testing at Ultimatum Theme and owns a WordPress-based web design business called CDNWebDesign. He has been programming since the 1970's and web designing since 1999. In his spare time, he likes to take scenic photographs in the beautiful Cotswolds in the UK.


  1. Dear UT Team, in your mail you mention the video: “At this point, I hope you have installed Ultimatum, as per this video:”
    but there is no link!Where can I access that video?Thank you,

  2. Nnnn

    So how do you connect this post types? How do you say search a venue / location for a gig or performer ! Love the starte insights – esp. Changing folder from month to one folder for media – but wonder how you connect this info from fields / post types entered on front end

    • I use Search & Filter Pro to make searches, and in WonderLoops I would use PHP and an iframe widget to call in related data from other CPTs, making use of the Search & Filter Pro results filter capability built in to Ultimatum’s Custom Loop. Once Ultimatum Plus is released, I will build a Gig Guide showcase on how to do this.

      • Awesome – I just purchased a few domains and have started myself on this task – but the site will allow businesses ( locations ), bands ( performers ), and charities ( causes ) to be linked and allow them to link to each other via website the combination of the three creates a ( GIG ) and so you can search for gigs for a certain cause , by a certain group and in a certain location….

        Or say they simply want to know what’s playing at their favorite bar this weekend…

        I was going to use types and views and facet pro along with UT…

        I’ll try it with your method as well but when i start selling tickets and splitting commissions based on connections made on the fly via the front end of the site thru various forms connecting and creating CPT’s with no administrator present it gets to be a bit overwhelming … I have about 75% of how to but as you can see – I’m still looking for an easier way…