Most Drupal themes have an optional left or right column and that's it. Thanks to the ns function here and the grid framework, it's much easier to have more dynamic layouts. I've created various optional column widths on both sides allowing for dozens of possible combinations. On each side there are (potentially) two thin columns (each 2 x 60 pixels wide), two thick columns (each 4 x 60 pixels wide) and then another two thin columns (each again 2 x 60 pixels wide). On the front page of my site, I could, for instance, have [thin][thick][content][thin], on blog entries, I could have [thick][content][thick] and on forums posts, I could have [content][thin][thin].

This is great, but having all of these columns on together makes the admin/build/block/list page run out of space (since the normal grid is 16 columns wide and just enabling all of the possible left hand sidebars takes up 16 columns alone) so I had to create a 38 column wide grid for us for this page only. (I'm not sure why the creation of that specific file wasn't picked up with the diff, I followed the CVS instructions and I'm not used to CVS as my version control software.)

I've attached a screenshot of the extra wide grid that appears only on that page, all other pages look the same, just be careful not to create more than 16 columns worth of sidebars on any given page. Out of the box, this will allow non-themers the flexibility to create dozens of layout variations without needing to know CVS.

Please note, I did not make the necessary modifications to the RTL file. If the maintainer likes this idea, please set this to code needs work and I'll be glad to make the final changes. If the maintainer would rather not include this (or knows of a better way to do this), that's fine too.

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

dvessel’s picture

Status: Needs review » Closed (won't fix)

Your insane. I mean that in a good way. ;)

Thanks for the patch but I think this is overkill for a theme like NineSixty. But feel free to steal the code behind ns() and work it into your own theme.