I've been wanting to convert my personal site over to a CMS for some while, since it's gotten increasingly hard to manage as it's grown, but I needed something with more structural flexibility than most of them have. Drupal seems to be the clear winner on that front, so I've got it installed on a test subdomain and am trying to get it configured the way I want.

I've been reading up on the taxonomy system, and it's starting to make sense, but I'm still a bit muddled about certain aspects of it, so I'm hoping someone can help me out.

What I want to do is this: have six major topic areas, and within each one certain features such as articles, book reviews, web site reviews, etc. So far so good -- I can set up one vocabulary for topic and another for content type, and each new story will get tagged with one of each, right? But here are the two things I'm not sure about:

Within each of the six main topic areas, there are a number of subtopics, at least for the areas with the most content (articles and web reviews, mostly). The number of subtopics varies from one area to the next, from around 8-10 at the low end to 25-30 at the high end. So I suppose the obvious solution would be to make topic a hierarchal vocabulary, where all the subtopics would be subcategories of the main six. But the thing is, I want to treat the main six a bit differently than the subtopics. I'd like for them each to have their own intro page, with a description/introduction, and then links to the various types of content (articles, book reviews, forums, etc.) within each one, and maybe the option of varying the theme slightly for each (different header image, for example). But I don't want to have to do that for each subcategory. Is this possible?

Also, I don't know that I want all types of content to have to be broken down into that many subcategories. It makes sense for a topic area that contains, say, 50 or 75 articles and upwards of 100 web reviews to have those broken down into a relatively large number of subcategories. But it doesn't necessarily make sense to do the same with (for example) the forums. Right now I just have the forums on the site split into the main 6 categories with 2-4 subcats under each, regardless of how many subcats there might be in the articles. A forums shouldn't have too insanely complex a structure... Is it possible to come up with a sensible solution for this?

I guess what I'd ideally like would be a way to define the main six topic areas, the various content types, and then an optional subcategory vocabulary for each of the main six, which could be enabled for some content types but not for others. Does that make any sense? Or am I thinking about this wrong? The whole topic still makes my brain hurt a bit...

In case I haven't explained this clearly, you can see the original (non-Drupal) site at http://www.wildideas.net -- maybe that will make the basis I'm trying to work from more comprehensible.

Any advice would be appreciated - thanks!

Comments

venkat-rk’s picture

Since you are using 4.7, please do yourself a favour and use the excellent category module. Trying to use taxonomy for complex hierarchies in 4.6 will kill you (well, not quite, but you get the idea;-)).

Start with the detailed hybrid tutorial on the docs section of http://category.greenash.net.au

spidersilk’s picture

OK, I've downloaded and installed Category, and read through that tutorial (although parts of it almost made my brain melt), but I'm still a bit confused.

Maybe I'm misunderstanding all this, but it seems to me that Category limits your options, rather than expanding them?

As I understand it (and I may be completely wrong, if so please tell me), Taxonomy lets you create several separate category hierarchies that can intersect with each other, so that I could have one for topic area (nature, culture, spirituality, etc.) and one for type of content (articles, book reviews, etc.), and any given piece of content could be categorized under both of them.

But Category makes you put it all into one big hierarchy, right? So the only way I could have (for example) book reviews under each of the six topic areas would be to create a separate book reviews category under each one? or I could create one book reviews category and give it six parents, but it would really be the same category under each of them and show all the same book reviews regardless of which topic area you were in? And if I wanted to use the same subcategories for articles, book reviews and web site reviews within a given topic area, I'd have to either create the whole set of them several times over, within each of those categories, or else create each one once and give it multiple parents, but then all the articles, book reviews and web site reviews would be lumped in together and couldn't be displayed separately?

Or am I completely misunderstanding this? Is the whole point of the Category module to condense everything into a single hierarchy instead of letting you have multiple vocabularies or whatever they're called? That's what it seemed like that tutorial was about. But the description of the module said it was supposed to offer more flexibility, not less, and I'm not sure how it would do that. And the more I read about it, the more confused I get.

Does anything I'm asking above even remotely make sense?

venkat-rk’s picture

Or am I completely misunderstanding this? Is the whole point of the Category module to condense everything into a single hierarchy instead of letting you have multiple vocabularies or whatever they're called?

Yes, and no. In an ideal situation, category module would like you to define a single master hierarchy or root menu. However, it also lets you define multiple root menus.

Regarding multiple vocabularies (or containers), category module does not restrict you from creating them in any way. The real power of category module lies in the way you can define multiple parents for any category or container.

As you rightly guessed, you only need to create the book review (or more appropriately, since you have web site reviews also), a 'reviews' category once and give it multiple parents. At the moment, I haven't figured out how to get 'bookreview' or 'reviews' to appear under *all* the parent menus- by default, Category.module takes the distant parent with the lowest weight (or lowest alphabet, in the absence of weights) for listing the menu.

Also, I haven't figured out if the 'reviews' page will show a contextual listing of nodes (Web site reviews if under that parent, Movie reviews, if under that parent) or lump together all the nodes, as you have mentioned.

Apart from this, both categories and containers are actual nodes, which means you can do all the stuff that you can do with a node in drupal. This is a big improvement over drupal's default taxonomy, especially if you are using it for defining a hierarchical site structure.

For instance, try giving an introductory paragraph or image to the taxonomy term you want to use as the top level of a hierarchical section, a Table of Contents for vocabularies and <<prev next>> links between any containers anywhere in the hierarchy using default taxonomy module and you will see the power and flexibility that category.module brings. In sum, it gives you more power and flexibility than taxonomy, not less.

All of this from my rather limited understanding of the category.module. Hopefully, Jaza can fill in the gaps.

spidersilk’s picture

Thanks - Category is starting to sound better to me now. There are still some parts of it confusing me a bit, but it's becoming a little clearer.

Whether or not a category with multiple parents can be made to show a contextual listing is going to be fairly important to me... But I guess that's part of the point of the Views module, or Category Views? To be able to make custom listings by whatever criteria you want? I suspect I may have to end relying on that pretty heavily...

Lynna

Business: http://www.spidersilk.net
Personal: http://www.wildideas.net

Jaza’s picture

Is the whole point of the Category module to condense everything into a single hierarchy instead of letting you have multiple vocabularies or whatever they're called?

Most definitely not. In the category module, containers are the same as taxonomy vocabularies, and categories are the same as taxonomy terms. You can have multiple containers with category, just as you can have multiple vocabularies in taxonomy. you can assign categories from different containers to your articles using category, just as you can assign terms from different vocabularies to your articles using taxonomy. Your categories can have zero, one, or multiple parents, just as taxonomy terms can have zero, one, or multiple parents. All of this great flexibility that taxonomy offers, category also offers.

The difference is that it's possible to structure your categories and containers into one giant hierarchy, and yes, it's true that this is the main aim of the 'basic hybrid structure' tutorial, and is a common use for the category module in general. But you certainly don't have to put everything into one hierarchy. And even if you do - that is, even if your containers and categories are all together in one big 'tree' - they are still separate in terms of categorising content.

PS Ramdak: I think you covered pretty much everything already - nice work! I think what I'm saying here is pretty much repeating what you've already said. ;-)

Jeremy Epstein - GreenAsh

Jeremy Epstein - GreenAsh

venkat-rk’s picture

Thanks, Jaza!

I found one possible mistake in my post:

The real power of category module lies in the way you can define multiple parents for any category or container.

Shouldn't that actually read "..multiple *distant* parents", something that taxonomy doesn't do?

spidersilk’s picture

Ah, thanks. This is all starting to make somewhat more sense to me now.

I think maybe I tried to read too much documentation, too late at night, and it all sort of collided together and made my brain melt. :-) It's starting to look a bit clearer now, and I think I probably will be using Category, though there are still a few things I'm trying to sort out about it (which I just asked in my other post, so I won't repeat them here).

Lynna

Business: http://www.spidersilk.net
Personal: http://www.wildideas.net