Different Themes, Headers, Menus and Backgrounds

Events happening in the community are now at Drupal community events on www.drupal.org.
stevecory's picture

How does one go about having a different theme for each group? Groups should retain the same regions, however, need to have different headers, menus and backgrounds and only override different values than the base theme provides.

A site was installed using Drupal 7.8 and had Organic Groups, Delta and Context modules added along with an Omega theme.

An Omega Sub-theme was created to be displayed whenever a specific Groups' content appeared. There was hope that Context+Delta could be used to perform this operation, however, Context does not have a "Condition" for a "Group" in the list of available conditions. If "Context" doesn't give a "Condition", like Group or Group type, then it's just not available?

Many failed attempts were made using the Context UI.
Under the "Reaction" section, "Delta" was selected from the list of available Reactions with a Custom theme settings template which referenced the Omega Sub-theme.
Under the "Condition" section, "Node Type" was selected from the list of available Conditions and "Group" was checked even though there is no way to decipher which group.
Also, "Path" was selected and set to the "group alias", and "node/###".
Also, "User Role" was selected and "anonymous user" was checked.

Both "Override all values" and "Only override different values" were tested under Appearance > Sub-theme Settings > Delta folder tab.
The Appearance > Sub-Theme Settings Dashboard has Folder Tabs for "List","Delta","Update","Settings"
Also, the logo was unchecked in the global settings.

Suggestions have been made to do this using blocks, although that would be a lot of blocks.
Also, to use different .CSS and logo for the different Deltas.

References:
What is Delta?
Using Delta for Contextual Layouts
Using the Delta module for contextual layouts
Jake Strawn
Modules Unraveled
Organic Groups Custom Theme Layout

Comments

There is a module for that!

ontological's picture

I had a different theme and menu for each group in D7 on a recent site. This module does the trick -- http://drupal.org/project/og_theme to get you a drop down of a theme per group on the group content type. You may need to do something in the OG configuration settings. I'm sure, but check the readme file.

Once you have multiple themes, you create a menu for each group and then assign it in the blocks interface on a per theme basis.

Hope this helps!

@ontological: What are you

awasson's picture

@ontological: What are you using to create your menus for each group, OG Menu? I've been experimenting with different methods of managing group menus and your post caught my eye.

Thanks,
Andrew

Menus per group

ontological's picture

I'm creating a new menu per group and assigning it to the menu block region in the group's theme. I'm user superfish, but imagine that doesn't matter.

Thanks. I'm dabbling with OG

awasson's picture

Thanks. I'm dabbling with OG and have been trying to come up with a best practice for creating group specific menus. I've used the new OG Menu for D7 (I think it's still in dev) and I've also come up with a technique using a view block. I'll look at superfish too.

Cheers,
Andrew

Re: Menus per group

stevecory's picture

Would You recommend to use blocks for the Group specific Site name or Site Slogan as well? Is it better to modify the CSS for each Sub-theme? Which menu block are you assigning the superfish menus to? Which theme are you using?

Alas . . .

stevecory's picture

. . . there is no README.txt in the tarball or zip file, and I'm unsure of what or where the OG configuration settings are to be. I've tried the Admin > Structure > Content types > Group > Edit for the drop down of the theme per group, but this seems to be missing as well.

How to enable theme per group

ontological's picture

Yeah, it is not obvious. Let's see ... I think this is how I did it:

Assuming you've installed and enabled the og_theme module...

Administration/Configuration/Organic Groups/Organic groups field settings

In the "Bundles" drop down select your group content type (in nodes).

In the "Fields" drop down select "Groups theme".

At the botton of the list on the left should be your "The name of your group content type - Node entity". Click on that and click the "Add Field" button. This should add the "Groups Theme" field to your group content type. There after when you create a group (and when you go to already created groups) you should see a theme drop down.

Re: How to enable theme per group

stevecory's picture

This seems to be working just fine. Thank you for elaborating.

Seems to be working

ontological's picture

Yeah!

You might want to keep an eye

gmclelland's picture

You might want to keep an eye on the spaces module and http://drupal.org/project/spaces_theme. Spaces has a dev release for D7.

http://elearning.psu.edu/elearning/elms-botany-looks-why-spaces-so-powerful

Hope that helps

Spaces_theme

andrés chandía's picture

Could you point us to the dev release for D7, I can not find it yet.

@ch

Spaces module has a

gmclelland's picture

Spaces module has a 7.x-3.x-dev release, but spaces_theme doesn't yet. With spaces, I think you can still customize themes, blocks(using context module) and variables per space. You can see how he does it in the video with a custom module.

Organic groups

Group organizers

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: