WordPress is definitely the most well-known CMS in the general public and therefore the first choice for most people to start with.
And in my opinion thats totally fine because WordPress has in my opinion:
- the best backend to manage content in a user-friendly way,
- the easiest setup to start with,
- has a huge repository of plugins (which can be a downside as well, see below),
- huge community + tons of documentation,
- is lightweight and can run on pretty much anything,
- easy to update with a 1 click button in the backend
But there are some downsides to WordPress which can lead to many headaches and frustration:
- No multi-lingual support per default WordPress, only with (mostly) paid plugins
- There are so many free plugins that its hard to decide which is the one you really need and most of the time (after you decide on a plugin) it comes with so much functionality you will not need which creates overhead
- Interoperability between plugins regularly creates problems (for me)
And here some neither positive nor negative aspects:
- No dependency management makes it easy to update but creates dependency problems if plugin versions don’t work together
- No PHP template engine like TWIG produces no consistent way to connect PHP logic (aka Controller) with the template (aka View) and makes it harder to reuse template parts but removes the overhead and need of configuration for TWIG
Some WordPress facts
As per W3Techs WordPress is currently used for 63.6% of all CMS based websites and drives 37.6% of all websites available on the internet. (June 28th, 2020)
WordPress starts of with just 12 database tables, unlike Drupals 87 tables. This makes the database structure of WordPress very approachable and easy to understand if you need to dig deeper.
WooCommerce, a E-Commerce Plugin for WordPress, powers nearly 12% of all Webshops available on the internet. Source: https://trends.builtwith.com/shop/traffic/Entire-Internet
So what I want to say is
WordPress is a CMS which is fairly easy to understand, can be setup and used pretty quickly and has tons of plugins and support available. Because of these reasons it became the leading CMS worldwide.
WordPress also has its limitations and drawbacks. For me the main reasons to not use WordPress are:
- Multilingual Website
- Huge amount of data and/or rapidly increasing amount of data (> 200k entities)
- Custom Search Implementation like SOLR
About the “Huge amount of data (> 200k entities)”:
This is just a number I wrote down by gut feeling. The fact that every field of every entity in WordPress is saved in the same wp_postmeta table just increases the size of this table so that it has to get slow after “some amount” of entities.
In Drupal each field gets its own table and therefore is much more performant handling large amounts of data.