The Features as Plugins model for was introduced in WordPress 3.7 as a way for features to be developed for inclusion in WordPress core. The model allows a feature to be built, tested, refined, and polished before it is considered as a merge candidate.
When it comes to WooCommerce, we have adopted something similar: When we are building new features that introduce a significant change, and require substantial testing, we release them first as a Feature Plugin.
The benefits of adopting this model for WooCommerce are:
- The WooCommerce community can play a primary role in developing our platform
- Testing a feature by installing a plugin is accessible to people of varied experience levels
- We’re able to build out the feature quickly, independent of WooCommerce core
- We get live feedback from a wider variety of environments
- Bugs are more likely to be caught and destroyed!
A feature plugin for WooCommerce will typically be announced on our blog, and are made available in the official WordPress plugin repository. Anyone can download, install, and test the feature on their site, then give us feedback.
A feature plugin is updated regularly, and contributions can be made via GitHub.
Once we’re happy with the stability of the design and code, the features will be merged into WooCommerce core and accessible to all WooCommerce stores. At that point, you can deactivate and remove the feature plugin, as it will no longer be actively developed.
If you’re interested in staying more closely tuned, follow the Develop WooCommerce blog.
Examples of WooCommerce Feature Plugins
- WooCommerce Blocks: As the Products block is a new concept and dependent on Gutenberg which itself is still a feature plugin, we decided to release this as a feature plugin on April 24, 2018. Note: You’ll need to have both WooCommerce and Gutenberg running on your site.