This is the Drupal 6 version of issue #988106: New Region?. Can custom regions be added? I'm investigating adding a Spaces Dashboard to the theme. See


himerus’s picture

In the 6.x versions it IS still possible to add new regions via the theme's .info file as normal:

regions[new_region_1] = New Region 1
regions[new_region_2] = New Region 2
regions[new_region_3] = New Region 3

You then have to place them in your appropriate page.tpl.php in the correct location... in order for the content you've added to those regions to appear on page anywhere....

The MAIN issue with this is that the new regions are NOT controlled by any grid settings... The theme settings page doesn't have any configuration options for these newly created regions... If you ALSO want to add those settings, I can give you an example of how to do that... It's not "easy", but is possible... This was a good reason for the rewrite in 7.x-2.x was to make it all dynamic to create the settings for a region.

rhymeswithcamera’s picture

Thanks Jake. I have added the new region to the .info and page.tpl.php files. Today, I'm going to play around with Context Layouts (from Context module) - which this new region will be a part for certain sections of the site. Let me see how far I get along that path before I determine if I want to add to the theme configuration.

BTW, saw your latest on the 7.x-2.x version. Awesome stuff! Makes me want to move to Drupal 7 just so I can use the theme; unfortunately, not all of the modules we're using are ready for Drupal 7 prime time yet.

himerus’s picture

Status: Active » Fixed

You'd be surprised... D7 will be fully stable VERY shortly!!!

And a "majority" of the "major" modules ARE somewhat ready! I'm working on my 4th D7 project right now that has a slew of modules installed, and only a couple of glue modules to fill the gaps...

Make the leap to D7 when you can!!!

Marking as fixed.

It IS possible, with the added regions in D6 to also have them controlled by the Omega settings, but it takes a few more steps (to add grid classes, place the regions in theme settings as the other regions are). If that is your need too, let me know... it's not well documented how to do it... (without studying, and theme-settings.php to understand how each group of regions is put together.

If you need to add those settings, let me know, and I can provide a sample of how to do it as well.

RedTop’s picture

Unfortunately I had to go back to Drupal6 after initially choosing D7 so I would be able to use Omega2. I have now manually edited regions in Omega 6.x-1.0.

I would like to add that if you want to change/add to the default regions (such as preface and footer regions, of which I needed four) you also have to copy from the omega/preprocess folder into your subtheme/preprocess folder and edit the file. :)

rhymeswithcamera’s picture

Sorry for the delayed response. I am just now getting back to this issue and have a firmer grasp on the approach.

What I would like to do is rename the Preface regions via my subtheme: preface_first > preface, preface_middle > ticker and preface_last > palette. Each will be the full width of the grid. Renaming these regions will make the code more intuitive - since the 'ticker' and 'palette' regions each have a sole purpose on the site.

After studying the Omega files, I believe I have a plan of action. Will you confirm/modify as needed?

(1) Modify Preface region names in these subtheme files:, regions.css, page.tpl.php

(2) Copy these files from Omega into my subtheme folder and modify Preface region names: theme_settings.php,

Currently, I do not have a file in my subtheme, so no problem there. But the subtheme already has a theme-settings.php file that includes the Omega file. Should I keep as two separate files and modify the filename for one or combine everything into one theme_settings.php file? Or is there a better approach to modify Omega's theme-settings.php file?

Final question and just to confirm: If a base theme and subtheme both have the same preprocess file (like, will only the subtheme version get executed at runtime? If that's the case, then is it best when creating a preprocess file for your subtheme to copy the file from Omega's preprocess folder (if it exists) and modify from there? I read the README.TXT file and that point wasn't clear (to this newbie).

Thanks again for your help.

RedTop’s picture

Have you had a look at how to create subthemes yet?

Basically the (awesome and big-brainy) way Drupal works is that any files included in the subtheme override the files included in the startertheme. So, if you want to change anything, copy the files from the Omega theme to your subtheme folder and change them in your subtheme folder. Those changes will override whatever settings are in the Omega files.

So, more to the point: Just change the theme_settings.php file in your subtheme, no need to merge or change the one in the Omega folder. Same thing for your final question; your assumption is correct... it is best when creating a preprocess file for your subtheme to copy the file from Omega's preprocess folder (if it exists) and modify from there. ;)

rhymeswithcamera’s picture

Thanks RedTop for the quick response and the confirmation. I will now continue down the path I had plotted...

And yup! I'm a Drupal newbie. Does it show? ;) I started my first site building adventure in August, and began developing my theming chops with a custom Fusion subtheme. I'll just say that switching to Omega was a very smart move (for me)...I'm just making sure I'm utilizing the Omega awesomesauce as well as I can! Thanks again for the help!

rhymeswithcamera’s picture

I have it working with one caveat: The function in the subtheme's default theme-settings.php file is needed, so overwriting this file with Omega's theme-settings.php file and modifying it didn't work (read "WSOD"). So for now, I have my modified version of theme-settings.php in the Omega folder - which is called by my subtheme like it was before.

Even though this is working, I'm thinking that my modified theme-settings.php file should be sitting in my subtheme folder so that it's not overwritten down the road with an Omega theme upgrade. It also needs to acknowledge the theme-settings.php file - or rather the function it contains - that is supplied with Omega's starter kit. Should I stick with my current setup or is there an easy way to set this up properly?

RedTop’s picture

I would rollback the omega theme-settings.php file to the default one (download omega again if you need to). There's absolutely no need to change any of the files in the Omega folder. Just establishing a common Drupal groundrule here. Works the same for core, core modules and contributed modules. Any modification should be done in a subtheme or custom module. ;)

Also, the starterkit provides a default theme-settings.php file. After the basic modification (changing the subtheme name, see readme.txt) other modifications or amendments of theme functions should be done here, in the subtheme. Because the theme-settings.php file is already there you don't have to copy it from the Omega folder. Only files which aren't already in the subtheme will have to be copied from the Omega folder if needed.

Don't worry about asking. I was new to Drupal just a year ago. Things will start to 'click' once you get your head around the fact that Drupal is all about overriding defaults if you wish to do so. :)

(... and is a collection of building blocks called 'fields' you can stick to something called a 'node', like some sort of advanced Mr Potatohead. But that's a bit off-topic. :P )

sd.ahsan’s picture

This is an example u can go with this. to add custom regions
using superfish menu

How to implement Superfish dropdown menu.

Step 1: Define region on theme info file
regions[superfish_menu] = Superfish Menu

Step 2: Add the region output to the template file.
if ($superfish_menu):

print $superfish_menu;


Step 3: Add Js and css file in info file.

;Superfish Stuff

stylesheets[all][] = sf/css/superfish.css
stylesheets[all][] = sf/css/theme.css
scripts[] = sf/js/superfish.js

Step 4: Add superfish JS to template file

$(document).ready(function() { $("#superfish").superfish(); });
sd.ahsan’s picture

and forgot to tell u that download superfish menu ...
and copy this in your theme file ...........

rhymeswithcamera’s picture

Thanks RedTop and sd.ahsan. I have decided to revert back and remove my custom regions for easier maintainability and upgradability. As noted above, I had no problem adding/using my custom regions via the .info and page.tpl.php files. As himerus acknowledged in #1, the trick is integrating those changes into the subtheme's configuration setup. I almost got it working properly, but "almost" won't cut it. :) I'll just wait and enjoy this feature when we move to D7.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.