The panelizer module allows you to attach panels to any node in the system in Drupal 6 and 7.
It is similar to the panels_node module that ships with Panels, which provides a single node type that is a panel. Panelizer, however, allows this to work for many entity types. It works by using the Page Manager template to take over the page rendering of the node. In Panelizer 7.x-3.0, you can also panelize view modes. The old-style "Page Manager" implementation is treated as a specialized view mode.
- The administrator can specify which entity types may be panelized.
- The administrator can specify what content is allowed and what layouts are allowed per entity bundle.
- The administrator can specify a default panel to use per entity bundle. If a default panel is not specified, then panelized entities are normal entities until they are individually panelized. If a default panel is specified, then all entities of that type are automatically panelized with the default panel, and each entity can then have that panel modified.
- All entity fields are immediately available as panel panes. Additionally, with token.module, you can create custom content panes and use tokens to aggregate several fields into a simple piece of text.
- Unlike Panel Nodes, Panelizer allows additional contexts to be added to the panel, not just the node being panelized.
- Panelizer fully supports the IPE (In Place Editor) meaning that panelized nodes can enable the alternative directly editable panel.
Panelizer 7.x features
- All entities may be panelized - nodes, users and taxonomy terms are supported out of the box, other entities may be supported by writing CTools plugins. Support for comments has been committed, though further work is necessary to add some missing gaps in functionality.
- All view modes of an entity may be panelized independently. This reduces the reliance on page manager and allows teasers to have their own panels. It also allows entities such as fieldable panel panes to still be panelized even though they don't have a page manager mode. Using view modes it also allows panelizer data to be searchable by panelizing the default view mode instead of the page manager view mode.
- All panelized entities can be given a choice of panels. This means that the administrator can pre-create several different layouts for the entity and give them names; when editing the entity, the user can select one and the entity will be rendered using that layout. These choices can be optional or one can be required.
- Permissions make it possible to use panelizer as just a way to choose panels for an entity, or to let privileged users customize panels per entity, or some combination in between.
- Integration with Views Bulk Operations allows you to make VBO views to panelize many entities at once, and see which chosen panel a given entity is using.
- Note: Panelizer 7.x-2.0 is being phased out and will receive no new development and only critical bug fixes. At some point it will be removed completely; anyone still using 7.x-2.0 is encouraged to upgrade to 7.x-3.0, though there are some bugs being worked on related to the upgrade.
- Panels (v7.x-3.4 or newer is recommended).
- Chaos Tool Suite specifically Page Manager (v7.x-1.4 or newer is recommended).
- Install the module in the usual Drupal manner: unpack the tarball into sites/all/modules, then enable on the modules administration page.
- Visit the Page Manager administer pages page and enable the node template system page (node_view) if it is not already enabled. Panelizer won't work without this enabled!
- Visit Administer >> Configuration >> Panelizer and enable it for one or more node types. Once enabled for a node type, you will be presented with options to configure the allowed content for the type. If you enabled default panels, a simple default panel will be provided and you will be able to configure the settings, context, layout and content for the panel.
- Jackson River put together a tutorial explaining how to build landing pages using Panelizer.
- The module was covered in Code Karate's Daily Dose of Drupal series.
- OSTraining have a tutorial that also mentions creating alternative displays.
- Drupalize.me updated their Panels series to introduce Panelizer (commercial training video).
- Tim Eisenhuth from PreviousNext put together an article explaining how to programmatically modify Panelizer displays.
The basic system was written as generically as possible. In the future, we hope to make the following things possible:
- Allow subtabs off the node as panels. This would allow a single node to easily have a cluster of pages, all of which would be panels attached to the node.
For many of these features, volunteers wishing to help develop them would be greatly appreciated, as the author may not have the necessary time to complete these on his own.