Op maandag 7 maart 2005 00:11, schreef Steven Wittens:
The big roadblock for custom theme regions is having multiple themes per site. This is a valid use case (sections.module, or even a 'mobile' theme for PDA/Cell phones). I'd suggest you check out some earlier discussions on this in the archives.
This indeed is a problem. But can we not tackle it right here and now? My proposal: 1) a theme registers all its regions by returning an array from a called hook_regions. These should be choosed from a documented lists of "suggested good defaults". 2) the engine caches these, in a smart way: private (only in theme X), globals (in more than one theme), leftovers (only in one theme, not the same as private). 3) The UI presents these regions, overlapping is solved. (eg box_grey gives "header" and so does friendseletric, we should have only one "header"). The UI has a flag to define a *default* region. 4) The regions are now iterated as follows: 4.1) Global regions are filled by engine and cached per role and engine. (like now) 4.2) Private regions are filled by theme and cached per role and theme 4.3) Leftovers are appended to the default region and cached per role and theme 5) theme_page($content, $region='all') collects all these strings either from cache or from a rebuild, and returns them as HTML. $region can be 'all' (same as now) or $region ='none' only content area is returned (for popups, and performance!) or a string (I can see some nice uses for this, but ATM not yet used) ($region=header, to print only the header area) or $region ='none'. The naming has been discussed on drupal.org a lot already. I think, that if we agree on this issue Steven raises, we have more then enough said and documented to make up a nice program of demands for this module. Only thing is that we then need to find someone with ten fingers (or less) and a brain with some PHP and Drupal code in it, to actually make it. Hell, I might even volunteer for this, but I have to ask my client first. :) Regards, Bèr -- [ Bèr Kessels | Drupal services www.webschuur.com ]