The Panelizer module allows you to attach Panels to any node in the system. 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, each view mode may also be panelized individually, with special view modes added for the old-style "Page Manager" page display.
- 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.
Effort is underway to port the module to Drupal 8, led by David Snopek and the SCOTCH collaborators; there is a weekly planning meeting on IRC every Tuesday at 12 noon CDT (UCT-0500) in the #drupal-scotch channel.
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.
- Panels (v7.x-3.4 or newer is recommended).
- Chaos Tool Suite specifically Page Manager (v7.x-1.4 or newer is recommended).
Installing Panelizer 7.x-3.x
- 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.
The 7.x-2.x branch is officially phased out and will receive no new development or bug fixes. Anyone still using 7.x-2.x is encouraged to upgrade to 7.x-3.x, though there are some bugs being worked on related to the upgrade.
The Drupal 6 version of Panelizer is no longer supported.
- 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 code has been made available on two other repository services for people who have specific technical needs:
- Github: https://github.com/DamienMcKenna/panelizer
- Bitbucket: https://bitbucket.org/DamienMcKenna/panelizer
These repositories are considered write-only, pull requests to those repositories will be recreated on d.o. and pushed back out once the changes are reviewed & committed.
Since late 2013 Panelizer for Drupal 6 and 7 has been maintained by Damien McKenna.
All original development and continued work through early 2013 was by Earl Miles under a sponsor partnership between IO1 and NBC iVillage. Additional co-maintenance support was provided by both Damien McKenna and Derek Wright, and additional sponsorship by Bluespark, Hubbard Radio Phoenix and Mediacurrent.