Layouts for Drupal 8
At the Web Services and Context Core initiative sprint earlier this month, we attempted to re-scope the initiative so that it was more manageable and less daunting. We decided to spin off one of the major components of what it was trying to tackle into its own separate initiative, the Layout initiative.
The goal of the Layout initiative is to make all elements on the page into contextual blocks that can be rearranged and organized into flexible layouts (and even layouts within layouts) through a drag and drop interface.
Specifically, the initiative breaks down as:
- Contextual blocks: Provide the ability to pass in relevant configuration data to blocks so they can react on something other than the URL of the request.
- Blocks everywhere: Make all page elements—from the site logo to menus to the main page content—into blocks which can be treated the same.
- Multiple page layouts: Choose from either pre-configured layouts such as "3-Column" and "Grid" or make your own custom layouts for pages.
- Partial page rendering: Allow for individual page components to be loaded and rendered independently, allowing for better performance and independent AJAX requests.
- Better UI/UX to manage blocks: A visual, drag and drop interface for creating page layouts and populating with blocks.
This approach to building pages yields a number of benefits, including the ability to customize the look and feel of a site based on a variety of contextual information, the ability to render parts of the page independently for performance, increased consistency, and increased flexibility for site builders to re-use page elements in a number of contexts.
I've asked Kris "EclipseGc" Vanderwater to head up the Layout initiative team. Kris has spent a lot of time working with Panels and Page Manager, and intends to work closely with Earl Miles and other maintainers of the CTools suite. Read Kris's blog post for an overview of the initiatives' goals. Note that like all initiatives, they don't actually materialize unless people decide to help. Please join the discussions in the Blocks and Layouts Everywhere Initiative on groups.drupal.org and help work on Layout issues on drupal.org.
Congrats Kris and looking forward to the work coming out of this initiative.
March 2, 2012 - 17:50Welcome aboard, Kris! This is crazy important. Let's make it happen.
March 2, 2012 - 18:06This will be a great piece of functionality to hit Drupal core.
March 2, 2012 - 18:13Hey this sounds like really interesting and a nice evolution of the contextual links concept. Panels is a great concept but, from my experience (which could be biased), not quite ripe for non drupalistas (such as average non technical editors/admins). What your sketching in this post could mean a great leap forward in intuitivity for end user (end editors/admins).
March 2, 2012 - 20:03Very nice choice of path...
This looks very interesting. A good decision to separate this from WSCCI!
March 2, 2012 - 20:14Cool, this is mouth-watering stuff.
March 2, 2012 - 20:35But I feel a little frustrated that I have to wait so long before I can offer it all to my customers.
Help by contributing, and we may be able to get there faster.
March 2, 2012 - 22:38Great news!
March 2, 2012 - 23:44Good luck for the work Kris! Make the context management rock for D8! I'm sure we'll be able to find a proper way to have translatable blocks everywhere too. ;)
OMG! Can d8 even get more awesome?
March 3, 2012 - 01:02Drupal 8 isn't awesome at all yet. It's going to take a ton of work to get there, on this and other initiatives. Not just coding, but clearing the road ahead of blockers so that we can work.
This is just a plan for awesome. If you actually want awesome, come help make it awesome.
March 3, 2012 - 19:09This is exciting. I always build sites where clients are only just content editor and I never give them access to the block configuration because it's so confusing for them. So I'm definetely willing to help. as much as I can.
Recently I stumbled upon this module that introduces the concept of layouts. I don't think it's really maintained but there might be some code or approach of interest.
March 3, 2012 - 02:00http://drupal.org/project/custompage
Great news. Congrats Chris.
Really nice to see WSCCI sobering up a bit, realizing it can't gobble up the whole bottle :)
March 3, 2012 - 04:11OT
March 3, 2012 - 08:20Are there other initiatives on the work? Any chance to see some sort of content listing feature in core for D8? It really seems the missing block at this point to offer out of the box functionality for the most common use cases.
D8 is going to rock out of the box with this feature built in. Power layouts with ESI support will take us to a new level of site building for the enterprise.
March 3, 2012 - 08:30Congrats! Looking forward to working with you more :)
March 3, 2012 - 16:27Cool, this is mouth-watering stuffed. But I feel a little frustrated that I have to wait so long before I can offer it all to my customers.
March 3, 2012 - 16:32I think Display Suite might have a lot to offer this initiative. Has a review of contrib modules which might lend to the cause been carried out already?
March 5, 2012 - 10:57Can it add into mater repo branch (drupal project). Or a docs page to list all these D8 stuff.
March 5, 2012 - 12:56Congrats Kris, this is great news.
I'm just a bit worried seeing Panels and Page Manager being mentioned in this page, because IMHO those tools often seem to be too complex for most lay-out problems. For my own peace of mind, I'll just assume that they were only mentioned to illustrate Kris' knowledge on the subject.
March 5, 2012 - 13:13Excellent news, this sounds like a real step in the right direction. Having the ability to choose different layout per page is something we've been hankering for,for a long time.
March 6, 2012 - 11:42Can't wait :-)
Post new comment