My theme has 6 widget containers. I'd like to be able to offer users a screen, similar to the existing widget manager, that presents these sidebars in a layout that mimics my theme's default layout.
For example, I have the following widget containers:
- Above Header = a widget container that is displayed above the header area
- Below Header = a widget container that is displayed below the header area
- Above Content = a widget container that is displayed above the main content area
- Below Content = a widget container that is displayed below the main content area
- Sidebar = a widget container that is displayed to the right of the main content area
- Footer Area = a widget container that is displayed below the main content area and above the footer area
So, what I'd like to do is reformat the sidebar manager (or create a custom version of it that can be accessed with a custom admin toolbar link), so that instead of just displaying my widget containers one on top of another in the right sidebar, it actually lays them out according to where they appear in my theme's actual layout.
So, the "Above Header" widget container would appear at the top and span the entire width of the screen.
I would then have a read-only div that represents my theme's header area below that. Then, below the header area, would be my "Below Header" sidebar container, etc...
I would then repurpose the "Available Widget" palette and covert the widgets there to icons. This would allow them to be more easily converted to an "objects" pallete that could be anchored to the screen with expand/collapse toggle via jQuery so that items could be drag/dropped into my container widgets.
I'm not looking to reinvent the wheel, so my question is:
1) Does something like this already exist?
1b) Is something similar to this on the drawing board for a future version of WP?
Note: since I'm registering my widgets with custom classnames, I already have access to each of them via CSS dom selectors. This gets me part of the way to the proposed layout I'm considering. I could then do the rest of the layout via Custom CSS and jQuery. Just looking to see if the work on this has already been attempted or is on the drawing board for core enhancements.