The Gutenberg WordPress Editor will very soon be part of WordPress core. This new editor promises a completely different content creation experience in WordPress, and is arguably one of the biggest changes of functionality in WordPress history. And no single core feature has ever inspired such heated debate amongst WordPress users and developers.
What is Gutenberg?
I’m glad you asked! Gutenberg is a plugin that is currently in development, slated to replace the existing editor with the release of WordPress 5.0 sometime this summer. Gutenberg supercharges the WordPress Editor, turning it into a complex page builder, giving content creators the ability to structure and design their content without having to know any code.
Taking a look at content in Gutenberg shows a more minimal, less distracting space to view your content as it is added. Controls have been moved to a separate menu off to the side, giving a completely uncluttered view of the page.
How It Works: The Block Concept
The point of Gutenberg is to make it easier to structure and design your content without knowing any code. It enables the user to divide their content into “blocks” – individual content types that can be designed and reordered around the page – and even shared between pages.
As you can see from the screenshot above, this is a vastly different experience than the editor we are accustomed to. Selecting a block and viewing its block menu shows controls for individual settings: text and background color, alignment and more.
This is just the default paragraph block that will ship with core – many more blocks for everything from headings to galleries are included (check out the list in the Git repo here). In the future, many developers will be creating add-on blocks to give even more control over different aspects of the design and layout, including theme and plugin-specific blocks as well.
Wait. Haven’t I Seen This Before?
Probably! Wix, Squarespace, Medium – they all employ some version of a visual editor. And if you’ve ever worked with a Page Builder plugin in WordPress, you are already familiar with the concept. Divi Page Builder and Visual Composer are examples of very popular “Drag and Drop” WordPress page builders available as plugins for any site.
The wild success of these visual builders has shown us that users love having full control over content design, and really are starting to expect it in any modern content creation system. By that reckoning, it makes sense for the WordPress core development team to take this feature very seriously: WordPress has always been a platform for the people, by the people. The core team listens to what users and developers want, and they work to put it into core; this is the way WordPress has always worked. So why are so many people in disagreement over Gutenberg?
So are we solving a problem, or creating a new one? Many people feel that Gutenberg is a really really great idea – that belongs in a plugin, not a core replacement for the existing editor. The trouble with adding something so complex to WordPress, is that every single theme and plugin will need to change the way they work in order to accommodate it. Gutenberg has changed the way content is created and stored at the most basic level in WordPress, and this means major breakage for many themes and plugins who have been relying on existing functions to make their products work.
But supporters of Gutenberg argue that this is the only way forward: Gutenberg is ultimately about freedom in publishing. When Johannes Gutenberg introduced the printing press in the 1400s, manuscripts and important documents were being reproduced BY HAND, giving very little opportunity for people to write and read on their own. The printing press introduced the ability to mass produce books, meaning common people, not just the rich, could have education, access to books, and access to publishing their own thoughts and ideas. It revolutionized the world.
So it turns out the name “Gutenberg” is highly appropriate for the revolution that is about to start happening in the WordPress world. At its best, Gutenberg will be the tool that agencies can use to give their clients interactive templates that they can use to design complex content without the fear of breaking their site. Theme developers will no longer have to rely on plugins or creating their own builders in order to offer rich layouts in their design. Plugin developers can integrate their features seamlessly into content without having to hack the editor. And of course users will feel the freedom of creating, designing and structuring their own content in ways that will no longer require a developer.
But this change will not come quickly, nor will it come easily. Gutenberg marks the first step away from WordPress’ core tenet of backwards compatibility: the dedication to preserving old functionality across every version of the platform. This means, in a nutshell, that new things should not break old things. Not so for Gutenberg – at time of press, there is no permanent fallback planned for Gutenberg. The old ways of doing things will eventually be completely removed, and plugin and theme developers will have to update their products to work with Gutenberg.
For the release, and likely quite a while after, WordPress will allow the option to switch off Gutenberg and still use the old editor. It remains to be seen whether this is to be a permanent option. But don’t fear for your sanity TOO much: there IS a button that converts content created in the old editor, into Gutenberg blocks. I imagine eventually we will be seeing plugins that allow you to do this in bulk – an easy way to convert many posts at once – but haven’t seen one yet.
This will take time. And many things will break. Many plugins and themes may go abandoned, because the job of upgrading to Gutenberg support will be too great to manage. It will take time for users, developers, and agencies to learn how to use and work with Gutenberg. It will take time to work out bugs and kinks in development as well: Gutenberg will be constantly reviewed and revised to work better and do more. But many people believe this inconvenience is worth it for the greater good of moving us all forward, both in WordPress and the whole of the Internet in general.
Looking Toward the Future
There are currently a lot of developers putting a lot of time into building Gutenberg. Automattic, the company that owns wordpress.com, has multiple full-time developers working only on Gutenberg, and there are plenty of others dedicating their time and coding skills to the job. Even still, Gutenberg is far from ready for release in core.
Taking a look at the Gutenberg Github repository, which is used to store, manage and contribute new code to the project, it’s clear there is a lot more work to be done. As of Friday, there were 661 open issues in the codebase, with new ones being added every day as new users and developers start evaluating the editor. But with 181 contributors and 524 forks of the code, it’s clear that this is a project that is taking top priority in WordPress development.
New enhancements, features and bug fixes are put in place literally every day, and change is happening quickly. However, it still remains to be seen when Gutenberg will be ready to integrate into core. It is not yet certain whether WordPress Version 5.0 will ship with Gutenberg as originally promised, or if the feature will be reserved for a later version when the functionality is more stable.
Want to try it out? You can, right now!
Gutenberg is already available for download as a plugin in the Plugins repo. I downloaded it fresh this week to create the screencaps you see in this post. Feel free to take it for a spin and see how you like it. You can get a feel for the editing process and using the controls to customize your content, and be ready for the moment the big revolution happens!
Want to do more? Get involved! Anyone can contribute their time, code, design and documentation skills to WordPress, and everyone is encouraged to help. Gutenberg is still in a development phase, and anyone testing the plugin can submit issues, concerns or changes to the project. Learn more at make.wordpress.org!