Currently, a lot of people (statement based on my observation) uses the Category module, despite all it's problems, just to have a reasonable navigation/user-experience. Speaking of myself, I never really bothered whether Category should replace Taxonomies with nodes or the like. The killer feature of Category for me - that's just the plain existence of end-user-acceptable navigation-path through my contents.

The obvious requirement of some users is a tree-like structure. It's quite natural, given that all todays' systems are putting files (contents) into tree-like structures (directories), which may be browsed from the root to the file needed easily. It's quite natural even on web-servers, both CMS's like Joomla, and plain HTML in server-directories.

Unfortunately, with Taxonomy I can't find any way to accomplish this (please send me to the right direction if I'm missing something here). We can access contents via various news lists and searches (tracker, search box, frontpage promoted, or more added via Views module), go from one node to another similar via Term-page linked on the node... But there's nothing, NOTHING like browsing the categories(terms) from the top, as expected in some scenarios.
The only exception is the Forum module, which offers it's own navigation, and might be understood as an example for the following proposal, too.

Expected behavior:
1. Navigation menu (i.e. frontpage) might offer links like "Stories", "News" and the like.
2. Clicking on "Stories" will show a page for "Stories" vocabulary, including the Vocabulary's description, and overview of it's sub-terms (tree-like, perhaps with node counts).
3. Clicking on the terms will show the pages like 'taxonomy/term/5', including the Term's description and listed nodes. It would be nice to set style of the listing per-vocabulary, but I believe that Views can help here without need to change Taxonomy now. (To be considered - include also Category-alike tree-overview of sub-terms, if any.)

--- The first point is trivial and well supported.

--- The second point is the real issue here: Currently we have nothing like Vocabulary pages, which makes an unsolvable gap in the navigation workflow. I tried evertything I could find, but no solution really worked. There are contrib modules, like Directory - I tried quite a few, but none gave me a reasonable per-vocabulary page consistent with rest of Drupal (with input formats applied to teasers and such, or better only terms overview). Taxonomy Breadcrumb module even asks me for custom URL to show for Vocabulary level, as there's nothing in Drupal to use by default. Views seems to provide some reasonably looking Taxonomy overview (overriding 'taxonomy/term' with no parameters), but again it's not per-vocabulary. The best I saw is the Container-page of the Category module.

So, it would be nice to make a port of the tree listing from Container-page-code of Category, add the Vocabulary description above it, and throw it into Taxonomy module as a new page 'taxonomy/vocabulary/[id]'. It should be rather easy thing to do, as Category uses very similar structures internally, and it'll fill that workflow-gap.

--- The third point actually points to already existing term pages. We only need to make these pages more friendly: Adding the Term's description is covered by http://drupal.org/node/180719 (which would be also useful for the Vocabulary pages proposed above), we only need to add proper input formats in the Drupal 7 period (the current patch from that issue is nice, but disallows for example inline styles needed on my site). Also some links to sub-terms might be useful.

We also need some kind of navigation back up through the tree. I can think of two ways here:
a) Book-like "up" link to the parent item (like Category)
b) Proper Breadcrumbs (down to node-level preferrably), as seen in Taxonomy Breadcrumb module. (To be considered: Multiple Breadcrumb trails where applicable, as implemented in my tiny Category Breadcrumb module http://drupal.org/node/75276#comment-279550 ).

These improvements will, I believe, solve the need for hiearchic structure, without changing any basic Drupal's structures. It's all just UI (as defaults for possible further theming, preferrably).

Comments

catch’s picture

OK a couple of thoughts:
1. have you checked out views bonus pack? It has some taxonomy directory stuff in it just in case.

2. It'd be nice to see the organisation of hierarchical taxonomy a bit more like it is with the D6 book module - this has been mentioned before but worth bringing up again.

Crell’s picture

You know, I have never really understood the obsession with using Taxonomy for tree structures. If you want a directed site tree, that's what the Menu system it for. Just start adding pages to your Primary Links menu and poof, instant site map.

I just don't understand why Taxonomy has to be a part of it...

JirkaRybka’s picture

Menu system for this? That sounds a bit strange to me. And there are also issues with that approach:
- How will I make section-overview pages, with something similar to Term descriptions, to explain what is expected to be found inside? How will I theme these pages, to have different sections of the web with different look&feel?
- How will the page look like, if a short node is viewed, and a menu shows in a sidebar with 350 items in the same category?
- How will the menu-administration page look like, if there are 20 items for functionalities that needs some maintaining, plus 8000 items for nodes? Insane IMO.
- What about performance, if menu system is so flooded?
- How will the end-user assign a new node to more categories (menu branches) without permission to visit admin pages (and would he be able to create a menu item from node-form at all - I'm unsure on this one now)?
- How may I enforce that every new node of certain types MUST be assigned to some category, but NOT into other (non-content related) places in the menu?

My scenario is a community-site with various node types, most contents contributed by end-users with little computers knowledge.

I think that menu system is for admin-defined (or system default) links to major sections and functionalities, while Taxonomy is for structuring contents, each piece assigned somewhere by the author (enforced by a 'Required' feature). But it's only useful if readers are able to access it somehow, once it rolls off the front page and Recent posts (my site's contents is of permanent value to the community, not just short-life news).

I have never really understood the obsession with using Taxonomy for tree structures.

No insult meant, but honestly - I think that obsession should rather read demand here. Drupal have menus, Taxonomy, Book and Forum, but none is really usable for the workflow, for which there's just significant demand.

sun’s picture

subscribing

xano’s picture

I think that Vocabulary Index does what you mean, doesn't it?

catch’s picture

Status: Active » Closed (won't fix)

It does. And I don't think core needs to provide anything like this by default given there's quite mature contrib solutions around.