You rapidly find an insecure spaghetti mess, that's almost unmaintainable, especially when you find loads of random plugins installed and the previous developers cut corners and started hacking code into the core and the plugins, which of course then breaks stuff when you update any of it. Which you need to do. Often.
Why over just using a static site generator?
- lots of cheap wordpress hosting out there
- no need to "rebuild" whole site when you publish a new article
- friendlier to non-technical people
- upgrading version is just a click away
of course there are cons too (some are mentioned in the other comments), but for me, I can accept those trade offs
And the economics of the Wordpress ecosystem mean that there’s no incentive to fix this and bring more of these critical features into Wordpress core.
I also find the templating system unintuitive compared to something like Mustache that gets out of your way.
For these reasons I’m currently working on an open source batteries included CMS with a specific aim on improving the developer experience compared to Wordpress. It’s early days but always interested in other peoples thoughts on Wordpress’s strengths and weaknesses.
I should also say that despite all my criticisms, Wordpress is a monumental achievement, one of the great open source projects, and the world is so so much better for it. Imagine how much worse things would be it something more like Wix or FrontPage had become the default way to get a website online in the Web 2.0 era.
Abusing a blog engine to make it run small EC sites becomes a cheap and half manageable route. Even for super simple things like a site with a presentation page and a contact form, a wordpress blog is faster to set up, cheaper and more manageable and ultimately more reputable than many solution out there (the "cheaper" part being of course the more critical aspect)