"Minisites" design with Drupal ?

guix - October 21, 2008 - 14:43

Hi,

I've been thinking about that project for a long time now. I want to build a cluster of "minisites" connected with a main site. These are not real minisites because they all share the same domain name. Moreover I want to maintain only one drupal install, so Drupal multisite is not the answer for me here.

All the minisites have the same kind of content : a navigation menu on the left with a logo on the top, pages, and various custom content types : jobs, events, projects...

All these custom content types can be accessed from the main site, too : I want a list of all the projects on a page, then when I click on one I read the article in the corresponding minisite. Some minisites can have children minisites too, and I want all the jobs, events, ... of the children minisites to be accessible on the parent minisite. Then I can have children of children, and so on.

Content can be posted on the main site too, only if there isn't any corresponding minisite.

I've thought I could do it with Drupal in 2 ways (except the multisite install) :

1) with Organic Groups

I create a minisite content type for groups. Each group of this type is a minisite administrated by the group manager and a team of editors. The module OG User Roles allows me to tune the user roles only inside of these groups so the rest of the site is safe. The same module allows me to put a group logo too. With OG Menu and OG Block Visibility I can have a custom left menu for each group, administrated by the group manager.

Using groups allows me other interesting things in the future, like a newsletter for each minisite, private file sharing, ... However I wonder if it won't become too complicated with sub-minisites. I can use OG subgroups but does it mean I will have two logos, two menus, ... I still have to try.

2) with Taxonomy

I'm trying to do it with taxonomy, too. I define a "minisite" vocabulary (hierarchical) and inside I create a term for each minisite I want. For sub-minisites, or sub-sub...-sub-minisites, I create children terms of the minisite term. I can tune the user roles with Taxonomy Access Control.

I still haven't found any solution for the left menu (and the logo) of each of these minisites. The available modules can't help me as they generally provide a menu for the taxonomy terms or the nodes inside of these terms, but I really need to this menu to be customizable. Sometimes people will want a link to a node, sometimes to a term, sometimes to a view. I should use the Drupal menu system but no module seems to provide an editable menu for each first term of a vocabulary. So the other solution is to build it myself and I'm thinking of this solution : a block with PHP code that prints it only when viewing a node inside the minisite term or a view with a term argument which is the minisite term. Then I can for instance use the term description to put the minisite meu nu in that block, or define a custom content type "menu" and use it for the menu and print its body inside of that block.

Using taxonomy seems more complicated and I won't have the benefit of all the OG modules (especially file-sharing and newsletter), but I tend to think that this approach is more solid. What do you think about it ?

For those interested I

guix - October 21, 2008 - 15:07

For those interested I realize there's a whole thread here : http://groups.drupal.org/node/7725

 
 

Drupal is a registered trademark of Dries Buytaert.