This is intended to be a running entry on my experience with Gutenberg, the editor that as of July 2, 2018, I dislike it and think has great potential. Last updated July 2, 2018.
What is Gutenberg?
If you’ve not heard of it, Gutenberg is the newfangled editor for WordPress. It replaces the old, used-up TinyMCE editor, and it replaces it with something much, much more modern and more powerful.
The new one certainly looks nicer. It uses the screen real estate better, and offers considerably more functionality.
Gutenberg is not exactly the tool I’d have envisioned. It’s powerful and fresh and new, and there are things that are good about it and things that aren’t. Let’s start there. I don’t hate it, but I’m concerned and excited.
I like WordPress, and there’s lots to make better about it. But I’m not excited about getting phone calls from several hundred clients saying “why can’t I edit my site the same way anymore” the day after it comes out. (As of this writing, the expected launch date is probably somewhere around November 2018, but several deadlines for the project have already been bypassed.)
Gutenberg is likely going to help the WordPress system enormously, but until it does, it’s going to be a burden for everyone.
Gutenberg can be a great thing, and I think eventually it will be. I like the writing experience (for the most part, we’ll get to some of the things I don’t like specifically later).
What I don’t like
For all its merits, there’s a long list of issues with Gutenberg at the moment.
It’s probably not fruitful to go through all of them, but everyone is worried about this.
I wrote an ACF addon that’s essentially a stripped-down pagebuilder, and luckily because of Elliot Conden’s hard work it’s already compatible. But page builder plugins are just the start of this problem. We’re going to be finding compatibility issues all over the place, and it’s likely going to be older sites that break more than anything.
- Styles: I don’t want users to be able to adjust the text size. I don’t want them to be able to change the color of text, at least not within a default paragraph. Having those options makes it likely that they’re going to make every post “pop.” There will be red text everywhere. I was hoping they wouldn’t include this sort of thing, because it helps a client make their site look bad. These sorts of things (colors and sizes) should be set by the theme. They shouldn’t be set in the markup, so why are we allowing them to be? Decisions, not options, amirite?
- Blocks: There are some blocks that can be added in Gutenberg that likewise lead directly to bad practices. We don’t want users to try to put sidebars into the content area. So why is “Widget” one of the default blocks?
- Custom fields: We still get custom fields (yay!). This would have been a deal-breaker for me. We absolutely need the ability to take in data and then spit it out in several different places in a way that makes sense. But so far there’s no way to define where some of these custom fields go. Specifically, you can’t load custom fields above the Gutenberg editor. That’s problematic, because it’s sometimes important to show important custom fields first.
- For the foreseeable future, we’re going to have a split experience. Two editors. That’s a problem for training clients how to use a site. Someday, Gutenberg will become the norm, and I’m very pleased to see how Gutenberg augments a current site rather than trying to replace the editor everywhere. But still an issue that developers are going to have to deal with.
- The editor is just buggy as hell at the moment. I’ve run into probably 5 different bugs in the course of writing the first three posts on this site, including: 1) when I try to set a link to link to an external target, it doesn’t save correctly, 2) I get stuck in blocks and can’t get out (this has been a problem with several block types), 3) Images don’t always save consistently. I edited the width of an image slightly and it suddenly broke the layout. 4) Columns don’t work if there’s anything other than paragraph text in there.