It was just a couple of years ago, during the Obama administration that Drupal began to get a LOT of traction. I mean, there were MANY different government projects at that time that were built with Drupal. It is an amazing platform for a lot of reasons.
WordPress really started being designed as a Blog tool, and now it has grown to have 60,000 themes and 15,000 plugins. But Drupal is more about the DATA that is hosted in the app. Drupal is more like a Model View Controller design, where you can seperate the code from the data and attach it to a view. Drupal allows better customization because the ability to digest custom database schemas allows for better functionality for many purposes. In WordPress, every field is stored in one of a few tables, and Drupal doesn’t have the limitation. Drupal is more capable of displaying a dataset with a lot of columns.
When does a database need extra columns? Well it’s difficult to say. If your products are complex and you have a hundred different properties for each product, the ability to define custom fields in WordPress allows for some nice features (like searching through all fields). Drupal is going to allow for concepts like Calculated fields, and other advanced features.
In general, Aaron is a huge fan of using database driven Calculated fields for some things. If you need to create a formula, this formula can be defined in each query, or the formula can be defined ONCE as a calculated field and then used in a hundred different places. We like the centralization of logic that Calculated fields allow for some things. But not many projects require this.
Drupal is amazing for some things, but it is definitely a slower build time than WordPress. The Themes and Plugins that are available to Drupal are nice for many purposes.
But the REAL danger with Drupal is that it does not automatically update as well as WordPress does. I know that most people hate the updates that are required for your phones, and we know that running updates automatically is a tiny bit risky for some projects. But we wouldn’t have it any other way.