Building Features and Exportables (The Wave of the Drupal Future) – Live Blogging from Drupal Camp NYC8

By: Frank Carey (frankcarey)

Why settings should be in the code and not the database? Common problems with Drupal

  • How to track changes?
  • How to revert back in the case of a mistake?
  • How can configurations be re-used?
  • How to work as a team?
  • How to update settings across sites?

How to accomplish this

  • Certain modules have their own import/export capabilities, such as Views, Migrate, Rules
  • Other modules use CTools export API, such as Panels, Context (current standard)
  • Use modules like Strongarm that export the variables table

Enter: Features (Features Module)

  • Features is basically an exportables manager
  • Creates a “features” module (which is just a normal module)
  • Provides GUi interface to choose what should be exported with features
  • Provides drush integration

What should a feature consist of?

  • Logical sections and “atomic” functionality
  • Examples: Blog, Photo Galleries

Features of Features

  • Shows all module dependencies, content types, image cache types and views
  • Recreate and modify an existing feature (template)
  • Export features (distribution)
  • Modify exported features distribution in the include files directly

Takeaway Notes from this presentation:

Hardcore Drupal developers know the following modules well. How could I have missed using Features so far?

Really advanced presentation. Frank: Congrats on the Sony gig 🙂