Lullabot Ideas

We know stuff. We empower you to know stuff too.

Module Monday: Panelizer

Article by Jeff Eaton

When it comes to designing customized layouts and complex content-rich pages, few Drupal modules can match the flexibility of Panels. It shatters Drupal's traditional "Region/Content/Blocks" divide, giving site managers the ability to build custom layouts and enforce consistency across different types of pages.

Unfortunately, the "variations" system that Panels and its companion module Page Manager use can be cumbersome; developers and advanced site builders can master it, but managing huge numbers of different layouts can be a pain. This is particularly noticeable when each individual node on a site, or even of a particular content type, needs to have its own special layout or mix of page content. Wouldn't it be great if there were some way to give some editors and content creators control over the Panel layouts for just the nodes they create? That's exactly what the Panelizer module does.

Screenshot of Panelizer settings screen

Activating Panelizer is simple; its settings screen allows you to "panelize" any content type, piping its output through the Panels layout engine. In and of itself, that's not much different than overriding the standard node display page using Panels' normal Page Manager interface. With Panelizer, however, authors creating panelized node types can change Panel layouts, page content, and other Panels settings individually for each node they create. Administrators can choose which Panel layouts and Panel content types are valid for each node type, so writers and editors aren't overwhelmed with options that don't apply.

Screenshot of Panelizer allowed layouts

Once everything is in place, nodes can be created as usual; once they're posted, however, authors can click a "Customize This Page" link that utilizes Panels' in place editor. Dragging chunks of node content and related widgets around inside of the normal page design, then clicking save, is all that's necessary to customize a Panelized node. If you're used to hand-theming to achieve those effects, or laboriously constructing manual override variants using the Page Manager module, it's nothing short of amazing.

Screenshot of Panelizer editing a node

Panelizer is currently in beta, but is already in use on a number of large-scale sites including the NBC iVillage community. A developer snapshot release is available for Drupal 7. While it's definitely on the bleeding edge of site building, Panelizer is a genuine leap forward for Panels and complex Drupal designs. Check it out!

Comments

beta status

I expect to have a 1.0 release of Panelizer for D7 by the end of this month. There are a very small number of issues in the queue, and a couple of new features that will show up in the 1.0.

magic! you are like drupal

magic! you are like drupal wizard. thanks for your contributions Merlin.

I18n

Please focus on multilingual support if you can - this looks very cool so far!

Earl = Drupal Extraordinaire

Earl, I'm blown away time and time again by the software you write. Amazing!! Thanks Jeff for the write-up! Going to test Panelizer with Omega on my next site build.