I'm about to release a new plugin for WordPress (I'll post about it soon), but before I wanted to reorganize the Projects area. I was not really happy using the Drupal Project module for what I really need here. The Project module is what I've been using since I migrated my site to Drupal, and it is what they use for their Downloads area. It has a lot of features to completely manage project issues, synchronized with CVS and more. However, that's kind of overkill here, I should say, not to mention that I highly prefer to use my phpBB based forums for support et all ;-)
So I ended up getting into another Drupal module to help me manage all information about all my projects. It's the Content Construction Kit (aka CCK module). Really cool! It is something that really makes Drupal worth. With CCK you can create custom content, with any number of custom fields and that's pretty easy now to theme. Each item in the new projects area is now a CCK node.
Well, there's another custom module (something I had to write) in the middle that actually builds the tabs of the projects area and, depending on the selected tab, rebuilds the breadcrumbs (those little links that tell you where in the site hierarchy your are) and calls the proper page builder. These pages are just reports made with Views, yet another great Drupal module, I should say.
The only problem is that some URLs have changed, however I think it is all much better organized now. I spent a couple of days to make these changes... though I believe I'm quite happy. I hope you find it as useful as I do :-)










Breadcrumbs are broken
To be honest, the method I used to detect the tab a project belongs was a little bit hackish. The tabs themselves were hardcoded into my custom module.
I decided to base the tabs on taxonomy. Project items (ie. CCK nodes) are now assigned to a category. This category tells the tab the project belongs to. It makes much more sense, isn't it. lol
I'm working on it, at intervals (when real life permits), so the breadcrumbs are not built correctly now. In addition, I'll remove the dependency of the views module. Not really necessary. At this point, my little module already knows everything to build the report assigned to each tab by itself.
So the projects area will finally be based on Taxonomy (a Drupal core module) and CCK (probably part of Drupal core in 4.8 or so)... and my little module.