I am pretty new to WP and I have not had to deal with any overly complex content structures as of yet. Until now.

I'm trying to figure out the right mix of Custom Post Types, Taxonomies, Pages, etc. to effectively display and organize the content. Here's an example of content with a deep hierarchy to deal with:

        Actual Book
          Data for the book

I have a breadcrumb that needs to reflect that depth, so that's another piece of the puzzle. Each of those levels would have their own archive-like list. Collecting would show siblings of Publishing, Publishing will show siblings of Books, Books will show all publishers/series, Publisher/Series will show a list of all the books in that series. So, I'm not able to just fake rewrites or something like that. All of these pages will have content.

So, the question is, what sort of data types do I assign to each of those levels? How do I utilize CPTs, taxonomies, parent/child relationships to pull something like this off? And then it also has to make sense on the admin side for the people adding the content. Whew! :-D

I have looked and looked for tutorials and examples of complex content structures like this and have yet to find anything helpful. If I ever get this figured out, I'll be doing my own tutorial series on it! :-)

Thanks! Matt

  • This seems rather broad
    – Tom J Nowell
    Mar 11, 2015 at 16:25
  • It is broad. Not sure how else to ask the question, though. Just looking for insights into how WP gurus go about structuring this sort of content. I can't figure out how to get more than 2-3 levels deep with CPTs and taxonomies. Trust me, if I could find an example or tutorial elsewhere, I wouldn't ask such a broad question here.
    – Mattaton
    Mar 11, 2015 at 16:30
  • 1
    I'd limit your question to 1 question and be more focused, there's nothing stopping you asking multiple questions, and using hyperlinks. Asking a broad question is going to hurt your chances of a good response and make your problem harder to understand
    – Tom J Nowell
    Mar 11, 2015 at 16:37
  • Some of the issue with this question also is that a big part of this isn't WP specific but a general problem of data structure which might not be best positioned on WPSE.
    – kraftner
    Mar 11, 2015 at 16:39
  • Agreed, except that if I was designing the database and programming the php myself, I wouldn't have to work within the confines of how WP wants me to do it with post types and taxonomies.
    – Mattaton
    Mar 11, 2015 at 17:05

1 Answer 1


You'll want a post type of type book, with a custom taxonomy for the publisher series. Use post meta for the books data. The UI will be provided by Core

As a refresher:

  • Things/objects/entities are post types
  • We classify things using taxonomies. If you can filter by X, then X is a taxonomy, e.g. colour, type, size, shape, manufacturer, etc
  • Attributes that aren't filterable should be post meta, e.g. the attachment ID of a book cover image, the latin name of an animal, addresses. If you ever find yourself having to do a query for all X with a post meta of Y, you probably should have used a taxonomy instead
  • Categories and tags are taxonomies too
  • Posts and pages are post types too

Putting the post type archive for Books underneath a sub page with the URL structure you want will require you to:

  • Have a good understanding of what a custom taxonomy is
  • Understand query variables
  • Be able to implement new rewrite rules
  • List and display lists of taxonomy terms

You can find questions asking how to do these things and their answers on this site ( or ask them yourself )

  • The top part I understand and it's what has allowed me to go 2-3 levels deep without a problem. I guess it's that second part that is going to be fun. Getting the data down 5-6 levels gets beyond tricky.
    – Mattaton
    Mar 11, 2015 at 17:15
  • You shouldn't be thinking about it in hierarchies, what your talking about is trying to display a post archive, and filtering via multiple taxonomies from a URL, that's not the same as your data structure
    – Tom J Nowell
    Mar 11, 2015 at 17:19
  • So, you're saying that everything other than a book in the example I gave should be a taxonomy? Collecting would be a top-level taxonomy with a term, Publishing? And then books would be assigned to the publishing term.Then there would be another publisher/series taxonomy with terms for each publisher/series. How do I then tell WP that the publisher/series term is a "child" of the publishing term?
    – Mattaton
    Mar 11, 2015 at 17:35
  • One problem I see with the publisher/series being a taxonomy is that the terms would need to have publisher logos, etc. assigned to them. You can only do that if it's a CPT, right?
    – Mattaton
    Mar 11, 2015 at 17:40
  • It sounds like you have a lot of additional requirements and things you want that you haven't mentioned
    – Tom J Nowell
    Mar 11, 2015 at 18:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.