I wrote a piece about developer denial about the state of WordPress recently.
After putting it on socials, I got some of the usual push back.
One of the common thoughts expressed is that we’re “doing it wrong” or you clearly don’t understand WordPress and what it has to offer. That’s expressed in variety of ways, if we’re highlighting slow admin panel speed then clearly we must have too many plugins installed. If we’re saying the developer experience is better on other platforms then we haven’t taken the time to learn WordPress properly. Or we just don’t appreciate the WordPress way of doing things.
In my honest opinion, the way you speak of WordPress gives me the impression that you did not really explore enough of what it has to offer right now.
300 WordPress sites and 17 years using the platform might beg to differ but that’s OK. I get that people don’t know me and my background. That’s fine and I don’t read too much into it.
However, it got me thinking more broadly about what does it mean to do it right?
What doing it right might look like
Doing it the right way implies that there is one (or maybe a small number of supported ways) of achieving something. The right way to do things.
In the context of WordPress this would necessarily mean a few things.
There would need to be one clear editing paradigm for content. I know you can argue that Gutenberg is this. However the plethora of other options would have to be far from the norm. I’d wager that a LOT of people associate the WP editing experience with Elementor’s builder.
More foundational functionality would probably need to be in core
Custom fields, the building blocks of any CMS would need to have a clear foundation in core that was extensible.
Image optimisation and a bunch of the common admin customisations would probably need to be in core.
Better user role control
Folders in the media library
Better control over the list column views and search and filtering
Better hooks/filters/APIs for developers to ensure that the majority use the WordPress way of doing things because it’s extensible and easy and modern.
There would need to clear choices for major additional functionality. Caching, forms, events calendars etc. That doesn’t necessarily mean one choice only but the current situation where there are hundreds of form options does not lead to similar tech stacks.
ALL updates would need to be managed through a central package manager so that the half dozen commercial plugins you have installed don’t all check their individual update servers every time you load the admin, slowing it down.
WordPress would need to do a better job of promoting plugins or allowing ads or upsells so that developers didn’t feel compelled to litter the admin with ads and upsells in different places.
The reality is quite different. WordPress is designed to be flexible, to democratise the web.
WordPress supports a wide variety of editing interfaces
Classic editor via a plugin
Gutenberg
Gutenberg plugins that turn it more into a page builder and change it’s editing options
Page builders galore (of course I know these are third party created but WP provides the foundation and doesn’t prevent them from running)
There are 60K + plugins you can install with countless options in any given functionality category
WordPress doesn’t mandate any guidelines for plugin UX/UI. It’s the wild west still and at the discretion of the developer.
WordPress doesn’t enforce the latest PHP version so you can use deprecated PHP functions in your code and still expect it run
Countless different optimisation plugins and caching setups meaning that there is no consistent method of performance optimisation for plugins, themes and site owners or agencies to target with their code.
That’s not even a problem necessarily. It’s a platform of choice. You get to choose a stack of themes and plugins that suits the way you want to work.
Those choices do have consequences that you need to live with. Maybe plugin A doesn’t always play nicely with plugin B. But if you like or need plugin A enough then it’s OK to use it. Just go in with your eyes open. Everyone has different trade offs they need to make. Each website has slightly different needs.
So am I doing the right way?
I actually personally wish there was more of a right way for WordPress, I think WordPress would probably be a better platform if there were more “rails” built in.
But no, I’m not doing WordPress the “right way”.
I’m doing it in a way that works for myself and my clients. And you can’t tell me that it’s wrong, it’s just probably different to your way, whatever that is.