Discovered the Display Suite Module for Drupal 7

Posted by Art Williams on October 12, 2011

Yesterday I ran across a module called Display Suite that blew my mind. This module fills a gap in Drupal that I was only vaguely aware existed, but now that I know it is there I can’t see myself building many sites without this module installed.

What is Display Suite?

"Display Suite allows you to take full control over how your content is displayed using a drag and drop interface. Arrange your nodes, views, comments, user data etc. the way you want without having to work your way through dozens of template files."

The Display Suite module has been around for almost two years now and even has a Drupal 6 version, but has come into its own recently with the first official release for Drupal 7 in April 2011.

The Gap

Ever since I started using Drupal at version 4.7 most of my theming for a Drupal site has been done in a text editor creating override files or writing css to position content in the right place. And while there have been many attempts to create a way to layout within the browser, nothing I’ve used has been without trade-offs. Panels, Contexts, and core Blocks modules all have their supporters and advantages, but they equally all have negatives that keep them from being ideal. Just last week I read an article about one developer who was returning to the core blocks module.

For me blocks are powerful places to stick some dynamic content, but as a layout tool, it just falls short. Panels is a little too complicated and involves too much overhead. I use Context from time to time, but for me it’s too hard to manage contexts once you have more than a handful of them. Somewhere there is a disconnect between the interface and what I’m seeing displayed on the screen.

Display Suite First Impressions

The thing that first jumped out at me is that Display Suite for Drupal 7 really leverages entities and the Field UI. Rather than being a completely new interface like Context, it mostly lives in the entity display modes page.

Secondly, the Display Suite steals the best parts of Panels (turning off theme regions options and passing context to other pieces of content) without all of that overhead and complexity.

The third thing that stuck out to me is that Display Suite eliminates the need to override a template file just to provide columns or sub-regions within the content area while displaying a node or teaser. In fact, I can imagine a world using Display Suite where a template file override is a rare need.

Continuing Education

Since I’ve only know of Display Suite’s existence for a day, these are my first impressions. There is a lot more that this module seems to be able to accomplish, and I’m very excited about using it in a future project so I can learn all the ins and outs. I’ll circle back around with a full review after some real world experience.

To learn more, check out the introduction video below from the author of the module. After watching that one, there are 10 more Display Suite tutorial videos.

Related Content

MONTHLY MARKETING INSIGHTS.

Get thought-provoking and actionable insights to improve how your firm makes a connection with your customers.

LEAVE A COMMENT

The content of this field is kept private and will not be shown publicly.

Plain text

  • Lines and paragraphs break automatically.
  • Web page addresses and email addresses turn into links automatically.
Submitted by Mark Figart on Thu, 10/13/2011 - 9:56am

Wow, Art, that's pretty impressive on the surface (I watched part of video #2 to understand what it does). I do, however, get a little concerned about the idea of putting more and more configuration in the database, but perhaps it supports Features? If so that would do a lot to dampen my concern.

Submitted by Dougzilla on Thu, 10/13/2011 - 11:58am

Display Suite Rocks!

I started using this module for the first time on a Drupal 7 site. It really has changed how I theme node displays. The module is stable and relatively intuitive to learn.

It has custom field templates enabling you to choose html elements (with custom css classes) for the field display. It has all kinds of coolness.

It has some really nifty advanced features like the ability to add custom code fields (with Token integration). It is also integrated very well with the panels module so you can choose to display the node as a panel if you want. All kinds of interesting possibilities here..

Submitted by Art Williams on Thu, 10/13/2011 - 12:25pm

@Mark: While there is always the danger of taking a performance hit with storing configuration in the database, the ease of development & maintenance of the site can be a mitigating factor. And with Display Suite, I'm not convinced that there is much more stored in the database. The module seems to be about accessing what's already stored in a more flexible way.

@Dougzilla: It's good to hear from someone who has used it! Thanks for your comments. I feel like there is a lot more under the hood than I even realize at this point. I can't wait to use it on a site build, soon.

Submitted by Mark Figart on Thu, 10/13/2011 - 12:38pm

Art, it's not so much the performance hit that concerns me, but the difficulty of performing significant enhancements to sites that contain so much configuration in the db. Migrating from dev or staging to production can be a real headache.

Submitted by swentel on Fri, 10/14/2011 - 6:48pm

@Mark

All settings that you perform are exportable. Either through Ctools' Bulk exporter function or with features. So it can easily be managed in version control and deployed easily from dev to staging to production.

Submitted by Mark Figart on Mon, 10/17/2011 - 10:27am

That's great to know, @swentel. Thanks for sharing that info.

Submitted by Dino on Tue, 03/06/2012 - 4:15pm

I have been using boxes/blocks and a module called Context is this better?

Submitted by Samuel Ayela on Sat, 09/22/2012 - 8:42pm

Wow! DS is just awesome. Thank you very much for the review.

Submitted by Amy Peveto on Mon, 09/24/2012 - 9:44am

It's a nifty module. Gotta love the creativity of the Drupal community! :)