My Drupal Site Building WorkflowPosted on: May 29, 2015 - 12:51pm
Hello. My name is Kevin Cobb, and I have blockphobia. I know, I know. Some people swear by the Drupal block system. Especially now that the BEAN module has made such an impact (its the new block system in Drupal 8). I will have to give it a try once D8 is stable, but for right now I have a system that works with 0 blocks. In fact, I turn off the block module in most of my projects. How?... Panels Everywhere
From the project page:
Panels Everywhere is an advanced method to completely do away with Drupal's restrictive blocks system and instead use the much more freeing Panels Layout system to control how your pages look. Panels Everywhere modifies the page as it is being rendered to 'wrap' the content in a display and can even take over your page theme to do away with the need for a page.tpl.php.
Once Panels Everywhere has been installed, You override the Site Template and use a panels page layout. You can use a contributed page layout if you want, but in order to have ultimate control over your layout you'll want to create your own. Here's where the fun begins. Let's say you want to have a different layout on the home page. Doing this is super easy. Just create a new variant in the site template. Give it a Selection Rule of "Front Page". Make sure it is above the Default layout in the listing (so Drupal will select it first). Then give this variant a different layout.
(click for a higher resolution modal window)
Creating a layout is not that difficult, if you know basic HTML. Here's some documentation on how to create your own layout.
The Base Theme
Now there is another important element that brings this workflow together, and that's the base theme. With some Drupal base themes, it can be difficult to set up Panels Everywhere. The most popular theme to use in this combo is Omega 4. I love Omega 4 for the easy SASS setup, LiveReload integration, and custom drush commands. I use Omega 4 on most of my projects.
The Best Modules to use with Omega 4 & Panels Everywhere
These are modules to use specifically in conjunction with Omega 4 and Panels Everywhere. If you want a more comprehensive list of modules, check Top Drupal Modules 2015.
Panelizer allows you to control the layout of a particular content type. This is similar to what Display Suite does except it uses the familiar Panels methodology.
Views Content Panes
This module is actually included in the Chaos Tools suite. It allows you to set arguments on the pane so that it communicates with a view. This makes views content panes more reusable than blocks.
I'll admit that Panels has a reputation of excessive markup. Divitus, they call it. Clean Markup does just what it says, and cuts down on the amount of DIVs, and gives you full control on what classes you use.
While Clean Markup takes care of the excessive panels markup, the Fences module makes the output for fields nice and neat.