Hi guys,

I have an average 2 years experience with drupal and have been working with it on a basic level. No problems so far, love it very much.

However this time, a new challenge came about. I have a web site about a program in USA and websites consists of state websites, eg:

website/main
website/state/al/
website/state/fl/
website/state/ca/
website/state/ny/

etc.

Current CMS (Revize) used allows what's called "Webspaces" which I can assign individual templates. However, in case with drupal I haven't found how I can use different templates for different portions/sections of the website.

I can achieve it for instance via tracing session, and change headers and menu based on that. However, I would like to have certain nodes and its children to have specific theme/template.

Is that possible with drupal or not?

Thanks in advance for assistance.
Vlad

Comments

casey’s picture

http://drupal.org/project/sections might do the trick for you

f1vlad’s picture

Thanks, this is interesting solution. But there are still two major problems:

  • How will I manage permissions? I have 30 admins, they must only have access to their own sections.
  • I need to assign only a certain path to certain section. I.e. if editor creates content, it should have cetrtain path assigned so section's wild card will pick it up and provide a theme.
  • Are there any other solutions in drupal? I love this system so much but seems like it's not quite possible to achieve multi level theming and permissions.

    Thanks,
    Vlad

    domineaux’s picture

    A few thoughts not to solve your problem, but might help you develop some ideas for what you're trying to do. ... AdminSection1, AdminSection2, AdminSection3,etc. Then change the access control and Roles for each.

    I haven't used the sections module, but it might have some value.

    Here is a response I got to a similar posting regarding changes in the Garland theme. This might be of some value.

    For different themes on different pages you can use the Taxonomy Theme module.
    If you just want to change a few colours around then it might be easiest to create color01.css to color12.css in the theme folder that override the Garland defaults, then add something like this to page.tpl.php:

    <?php
    if ($arg(0) == node && is_numeric(arg(1)) {
    // Have a node, define cross references to color stylesheets
    $col = array(23 => '01', 7 => '02', 45 => '03' ... etc) // where 23 is the node that will use colour scheme 01, etc.
    print '<style type="text/css" media="all">@import "' . path_to_theme() . 'color' . $col(arg(1)) . '.css";</style>';
    }
    ?> 
    

    Presumably you've found the color module which lets you play with the basic colors ... it actually regenerates the entire style.css but I guess you could just extract the relevant changes and then do variations on a theme to get the color--.css files. Note you need to have files download method set to public while you are playing with color.module.

    Good luck

    sepeck’s picture

    I think you are really looking at Organic Groups for something like this.
    See http://groups.drupal.org for one implementation.

    -Steven Peck
    ---------
    Test site, always start with a test site.
    Drupal Best Practices Guide -|- Black Mountain

    -Steven Peck
    ---------
    Test site, always start with a test site.
    Drupal Best Practices Guide

    f1vlad’s picture

    Thanks for responding guys, I am still fighting with this, I will report what solution I end up going with.