Module Description
The features module enables the capture and management of features in Drupal. A feature is a collection of Drupal entities which taken together satisfy a certain use-case.
Features provides a UI and API for taking different site building components from modules with exportables and bundling them together in a single feature module. A feature module is like any other Drupal module except that it contains additional information in its info file so that configuration can be checked, updated, or reverted programmatically.
Examples of features might be:
* A blog
* A pressroom
* An image gallery
Drupal 8 and 9 Most Drupal 8 sites should not need Features. See Stop Using Features: A Guide To Drupal 8 Configuration Management or the Drupal GovCon session Advanced Configuration Management in Drupal 8. For environment-specific configuration, use the Config Split module. If you are building a Distribution you can still use Features to export specific configuration into your profile or modules.
The Drupal 8 and 9 version of Features requires the Configuration Update Manager module.
The 7.x-2.x version The 2.x branch greatly changes (and hopefully improves) the user interface of the Create/Recreate Features screen. In addition, it adds new functionality including:
* Ability to write your feature export directly to the Drupal file system (like drush fu).
* Ability to remove auto-detected items from your export.
* Ability to work with conflicting features.
The 7.x-2.x version is very compatible with feature exports created from the 7.x-1.x version. However, User Permission features will need to be re-exported, and Field features will be split into Field_Base and Field_Instance exports the next time you export. See New Field Bases and Instances in Features for more info.
There are currently no plans to port this new interface or new functionality to Drupal 6.
Regression in 7.x-2.12 There was a regression in the 7.x-2.12 release. See #3183346: [regression] Overridden features are reverting upon update. If updating from an earlier 7.x-2.x release, do not update to 7.x-2.12. Instead, update to 7.x-2.13 or a later release. See the release notes for 7.x-2.13.
The 7.x-1.x version The 1.x branch is no longer supported and is seeking a maintainer here: https://www.drupal.org/node/2706631
Documentation Drupal 8+
* The handbook on Features for Drupal 8 contains up to date documentation of how to develop and configure features.
* Blog post by on Features for Drupal 8 by Mike Potter.
* DrupalCon Los Angeles presentation on Features for Drupal 8 by Mike Potter.
Drupal 7
* Getting started guide contributed by Clemens Tolboom, Itangalo
* README.txt For everyone
* API.txt For developers, site builders
* features.api.php For developers
Related Modules Drupal 8
* Configuration Development provides automated import and export of configuration between the active configuration storage and exported modules.
* Config Menu Link, a drop-in replacement for core's Custom Menu Link module, enables export of menu links, including to Features.
* Configuration Tools is a package of modules that help to manage Drupal 8 configuration files.
* Configuration Update Manager provides a report that allows you to see the differences between the configuration items provided by the current versions of your installed modules, themes, and install profile, and the configuration on your site. From this report, you can also import new configuration provided by updates, and revert your site configuration to the provided values.
* Configuration Synchronizer: Provides methods for safely importing site configuration from updated modules and themes.
Drupal 7
* ***NEW***: Features Menu UUID adds a uuid column to menu links, and provides an alternative to the flawed menu links integration you get in features out of the box.
* Features Override
* Strongarm - export system Variables
* FTools - misc tools for Features (most functionality incorporated into Features 7.x-2.x)
* Features Plumber (not needed with Features 7.x-2.x)
* Features Extra
Other resources Drupal 7
* Video introduction and tutorial by Mustardseed Media
* Features 2.0 session @ BADcamp 2012 by mpotter
* Features presentation @ DrupalCon SF 2010 by jmiccolis
* Features presentation @ ADUG meetup by q0rban
Notes for contributors If you want to help in the issue queue:
* Thoughtful comments, including code reviews, can be more valuable than patches! Likewise, a patch without sufficient explanations is not likely to be accepted.
* Look for "pinned" issues in "needs review"!
These may not always be critical for functionality, but getting them done will unblock other issues.
Features provides a UI and API for taking different site building components from modules with exportables and bundling them together in a single feature module. A feature module is like any other Drupal module except that it contains additional information in its info file so that configuration can be checked, updated, or reverted programmatically.
Examples of features might be:
* A blog
* A pressroom
* An image gallery
Drupal 8 and 9 Most Drupal 8 sites should not need Features. See Stop Using Features: A Guide To Drupal 8 Configuration Management or the Drupal GovCon session Advanced Configuration Management in Drupal 8. For environment-specific configuration, use the Config Split module. If you are building a Distribution you can still use Features to export specific configuration into your profile or modules.
The Drupal 8 and 9 version of Features requires the Configuration Update Manager module.
The 7.x-2.x version The 2.x branch greatly changes (and hopefully improves) the user interface of the Create/Recreate Features screen. In addition, it adds new functionality including:
* Ability to write your feature export directly to the Drupal file system (like drush fu).
* Ability to remove auto-detected items from your export.
* Ability to work with conflicting features.
The 7.x-2.x version is very compatible with feature exports created from the 7.x-1.x version. However, User Permission features will need to be re-exported, and Field features will be split into Field_Base and Field_Instance exports the next time you export. See New Field Bases and Instances in Features for more info.
There are currently no plans to port this new interface or new functionality to Drupal 6.
Regression in 7.x-2.12 There was a regression in the 7.x-2.12 release. See #3183346: [regression] Overridden features are reverting upon update. If updating from an earlier 7.x-2.x release, do not update to 7.x-2.12. Instead, update to 7.x-2.13 or a later release. See the release notes for 7.x-2.13.
The 7.x-1.x version The 1.x branch is no longer supported and is seeking a maintainer here: https://www.drupal.org/node/2706631
Documentation Drupal 8+
* The handbook on Features for Drupal 8 contains up to date documentation of how to develop and configure features.
* Blog post by on Features for Drupal 8 by Mike Potter.
* DrupalCon Los Angeles presentation on Features for Drupal 8 by Mike Potter.
Drupal 7
* Getting started guide contributed by Clemens Tolboom, Itangalo
* README.txt For everyone
* API.txt For developers, site builders
* features.api.php For developers
Related Modules Drupal 8
* Configuration Development provides automated import and export of configuration between the active configuration storage and exported modules.
* Config Menu Link, a drop-in replacement for core's Custom Menu Link module, enables export of menu links, including to Features.
* Configuration Tools is a package of modules that help to manage Drupal 8 configuration files.
* Configuration Update Manager provides a report that allows you to see the differences between the configuration items provided by the current versions of your installed modules, themes, and install profile, and the configuration on your site. From this report, you can also import new configuration provided by updates, and revert your site configuration to the provided values.
* Configuration Synchronizer: Provides methods for safely importing site configuration from updated modules and themes.
Drupal 7
* ***NEW***: Features Menu UUID adds a uuid column to menu links, and provides an alternative to the flawed menu links integration you get in features out of the box.
* Features Override
* Strongarm - export system Variables
* FTools - misc tools for Features (most functionality incorporated into Features 7.x-2.x)
* Features Plumber (not needed with Features 7.x-2.x)
* Features Extra
Other resources Drupal 7
* Video introduction and tutorial by Mustardseed Media
* Features 2.0 session @ BADcamp 2012 by mpotter
* Features presentation @ DrupalCon SF 2010 by jmiccolis
* Features presentation @ ADUG meetup by q0rban
Notes for contributors If you want to help in the issue queue:
* Thoughtful comments, including code reviews, can be more valuable than patches! Likewise, a patch without sufficient explanations is not likely to be accepted.
* Look for "pinned" issues in "needs review"!
These may not always be critical for functionality, but getting them done will unblock other issues.
Module Link
Project Usage
158599
Security Covered
Covered By Security Advisory
Version Available
Production
Module Summary
The Features module in Drupal aims to solve the problem of capturing and managing different site building components from modules with exportables, bundling them together in a single feature module for easy configuration management.
Data Name
features