[wp-hackers] Page Templates vs Category Templates

Mike Schinkel mikeschinkel at newclarity.net
Fri Dec 3 03:11:24 UTC 2010


On Dec 2, 2010, at 3:31 PM, Otto wrote:

> On Thu, Dec 2, 2010 at 12:16 AM, Mike Schinkel
> <mikeschinkel at newclarity.net> wrote:
>> Imagine that instead of just having the URL root slugs /category/ and /tag/ and /2010/ baked into WordPress instead they were predefined "Pages" where the user could control the URL slug and add content such as intro text above the list of posts.
> 
> Isn't that what a custom taxonomy is?

Not really. A taxonomy doesn't have all the features of a page, no meta, etc. And it also have a more rigid URL structure than pages where the user can assign the URL. 

But please these are nuances and I'm not trying to start a debate; if it's important for you to view it differently than me this is not something I need to be right about. :)

> I think there's some underlying preconceptions in this thread that
> need to be addressed. For example, Haluk said "cats are the breads and
> butter of the WP", which I would disagree with. Most people don't use
> categories very well, often, or at all.

To which I agree.

> More to the point though, categories, like tags, are not "things".
> They are not nouns, they are adjectives. They don't have meta-data
> because they *are* meta-data.

Yes, but there are adverbs that modify adjectives and for that meta-data can be useful.

When you start analyzing you find that categories and taxonomies really are often nouns.  For example Justin Tadlock created taxonomies for actors, directors, genres, producers, studios, and writers:

http://justintadlock.com/archives/2009/06/04/using-custom-taxonomies-to-create-a-movie-database 

Of course you could argue those really should have been post types. But then you'd need post relationships for those...

http://core.trac.wordpress.org/ticket/14513

...but I don't want to open that can of worms again.

What I will say is that I spent lots of time categorizing developer tools for a printed mail order catalog in the late 90s and I learned that whatever way you categorize anything is "wrong" because there's always another way to categorize it.  The reality is that everything that looks an adjective when you are categorizing really is a noun with attributes of it's own.  It's not always important to capture these attributes into your site, but sometimes it is.  If you have a taxonomy called "color" is sounds like an adjective until you find you need to know it's Pantone number, it's RGB components, etc.

What's further really useful is meta-data about a taxonomy-term, i.e. if I have a site about SaaS Solutions and I have a category of "Has API" it would be extremely useful to have metadata about that; a brief description of the API offering, a URL with the documentation, an indicator is access requires OAuth, etc.

Which brings me to what I suggested a while back which is that deprecate wp_taxonomy_terms in favor of a post_type='taxonomy_term' but that suggestion was never warmly received.


> So while yes, there's nothing
> technically difficult about giving them their own template choice
> boxes, it doesn't seem to be an effective use of the system. You'd
> have to attach meta to meta, which doesn't make any sense. Adjectives
> don't usually have their own adjectives.

Unless they are adverbs.  

> In a sense, Pages and Page Templates can already sorta do what you're
> suggesting. You could make a Page Template that displayed the page
> content first, followed by some selection of Posts. That selection of
> posts (what terms defined it) could be defined by some set of
> meta-data attached to the Page itself, somehow. This basically fills
> your requirements. It has its own URL, you can select the template for
> it, you can define text...

Which is essentially what I was suggesting would be an option, fyi.

> I'd prefer that to happen with shared terms between them, although I
> haven't figured a good UI for it yet.

I'm currently working on a system that uses shared terms, and I've found that it's basically a nightmare which is what I think prettyboymp said a while back. Shared terms introduce a level of complexity just not pragmatic enough for anything with otherwise moderate complexity. 

 But rather than include post relationships in core which I had pushed for I'm moving ahead with a plugin because it's at lot less political pain that way.

On Dec 2, 2010, at 5:44 PM, Charles Frees-Melvin wrote:
> Think of it this way too. A term links topics together but they have properties too.
> 
> In my instance I have a radio station. I use a custom taxonomy "shows" for my show listing.  Shows has a Title, a Slug, a short blurb (description) and all it's posts. 

Great example.  But I'd argue that a "Show" should really be a custom post type (which you mention.)  Which brings the need for post relationships back up.  Of I've been told post relationships are an edge-case for WordPress so they are not something that will be added into core.

> Now a custom post type, but to have the ability to post posts for each show I need a taxonomy.

Again, an argument for post_type='taxonomy_term' instead of wp_taxonomy_term?

On Dec 2, 2010, at 5:57 PM, scribu wrote:
> Erm, no. Squeezing everything into a serialized column doesn't scale.

Amen to that!

-Mike


More information about the wp-hackers mailing list