WordPress 5.8 Field Guide


UPDATE on 12 July 2021: The Miscellaneous block editor API additions in WordPress 5.8 dev notedev note Each important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. was added to the BlockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. Editor section.


Whether you are a WordPress website user, builder, or developer, WordPress 5.8 brings exciting changes and a hint of even more goodies coming in WordPress 5.9. But we’re getting ahead of ourselves; let us take a look at what to expect in when 5.8 is released.

The WordPress 5.8 release cycle is different from previous ones in several ways, but the release squad navigates it with ease, even though not entirely without pressure. One of these differences is a decision to include an unplanned Beta 4 into the release cycle. This is not such a surprise, given that there are 96 enhancements and feature requests, 170 bug fixes and 24 other blessed tasks, which brings us to 290 Trac tickets in total.

In this Field GuideField guide The field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page., you will notice what is relevant to you and your users among the many improvements coming in 5.8.

Block Editor

The block editor moves onward with regular releases. GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ version 10.7 is bundled with WordPress 5.8; that totals eight Gutenberg releases (versions 10.0, 10.1, 10.2, 10.3, 10.4, 10.5, 10.6, and 10.7) all merged into this WordPress release (as the related Gutenberg handbook page makes clear)! Bug fixes and performance improvements from Gutenberg versions 10.8 and 10.9 are also part of 5.8.

The WordPress 5.8 Beta 1 post highlights a lot of the version’s new features and improvements:

  • New site editing blocks
  • The powerful query block
  • The block List view
  • Duotone image effects
  • Updates to existing blocks
  • Recommended patterns

As well, those recommendations integrate with the Pattern Directory on WordPress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/, template editor, theme.json, and blocks in widgetWidget A WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. areas among other changes.

In the block editor-related dev notesdev note Each important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. below are important details on how theme.json delivers editor style control and associated Global Settings and Global Styles, plus:

  • Blocks in widget areas
  • block.json as canonical way to register block styles
  • deprecation of filters and introduction of context-aware replacements
  • Removal of previously deprecated EditorGlobalKeyboardShortcuts component, hasUploadPermissions selector, and hidden Subheading block
  • The iframed template editor portion of Full Site Editing
  • Block-styles loading enhancements

Media

Amongst all Media changes, the highlight is support for the WebP image format. Accompanied by new image_editor_output_format filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. (see #52867), it will set foundation for a real performance boost. You will also notice some UIUI User interface improvements, such as replacing infinite scroll with AJAX response (#50105 and #40330) and copy-link button on media upload screen (#51754).

Plugins

Changes in the Plugins component aim to make pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party developers lives easier. From better docs search (#50734) and standardizing hooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same. terminology (#50531) to ability to mark plugins as unmanaged (#32101) and avoid overwriting plugin files caused by update conflicts.

REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/.

REST API changes are mainly focused on Widgets and sidebars but there is also a new operator for taxonomyTaxonomy A taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies. queries within post collections, support for the eagerly awaited AND comparison, which allows posts meeting all passed criteria are matched (#41287).

Site Health

Amongst the UI fixes, Site Health changes bring new actions for extending the navigation in the Site Health screen (#47225). You will also find new info provided by Site Health via a list of the supported file types for the active image editor (#53022).

Themes

Across the Themes changes you will find two new action hooks, delete_theme and deleted_theme (#16401), a few UI improvements such as clearly showing if a theme is a child themeChild theme A Child Theme is a customized theme based upon a Parent Theme. It’s considered best practice to create a child theme if you want to modify the CSS of your theme. https://developer.wordpress.org/themes/advanced-topics/child-themes/. (#30240), update counter in adminadmin (and super admin) menu item (#43697), and removal of “Featured” tab in Add Themes screen (#49487).

Also, older bundled themes are refreshed with some really nice block patterns for your pleasure and inspiration.

Other Developer Updates

There are even more goodies in 5.8! Read through the dev notes below to see details on how Internet Explorer 11 support is being dropped as well as assorted changes to the Bootstrap/Load, Build/Test Tools, Formatting, General, Media, Posts/Post Types, RevisionsRevisions The WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision., Themes, and Users components.

Alongside the dev notes below, also worth noting is that work has continued during the 5.8 release cycle to increase the compatibility with PHP8 and its new features. Please continue to test your code against PHP8 as we all work towards raising the entire WordPress ecosystem compatibility with PHP8, thank you!

But Wait, There is More!

5.8 offers so much more! Over 170 bugs, 96 enhancements and feature requests, and 24 blessed tasks have been marked as fixed in WordPress 5.8.

Here are a few that haven’t been highlighted:

  • Build/Test Tools: Remove @babel/polyfill in favor of core-js/stable, requires explicit addition of regenerator-runtime as script dependency if IE11 support is still required (#52941).
  • Bundled Theme: Add Block Patterns to Twenty Ten to Twenty Fifteen default themes (#51107, #51106, #51105, #51104, #51103, #51102).
  • Comments: comments_pagination_base missing in get_comment_reply_link() function (#51189).
  • Comments: Comments list’s link should point to an actual article (#52353).
  • Embeds: Process embeds for block widgets (#51566).
  • Emoji: Bump Twemoji from 13.0.1 to 13.1.0 (#52852).
  • External Libraries: Bump jQuery from 3.5.1 to 3.6.0 (#52707).
  • External Libraries: Bump Moment.js from 2.27.0 to 2.29.1 (#52853).
  • External Libraries: Bump Requests from 1.7.0 to 1.8.1 (#53101 and #53334).
  • External Libraries: Bump Underscore from 1.8.3 to 1.13.1 (#45785).
  • Media: Remove infinite scrolling behavior from the Media grid (#50105).
  • Media: Add a copy-link button at the media upload page (#51754).
  • Menus: Add ability to delete multiple menu items (#21603).
  • Revisions: a new dynamic filter to specify post type for number of revisions to save, wp_{$post->post_type}_revisions_to_keep (#51550).
  • Role/Capability: user_can() changed for exist capability for anonymous users (#52076).
  • Upgrade/Install: Remove parsing of readme.txt files from validate_plugin_requirements() (#48520).
  • Upgrade/Install: Fatal error during update to 5.8 of a site with an active Gutenberg plugin (version less than 10.7) (#53432).
  • Widgets: Make sure WP_Widget constructor creates a correct classname value for a namespaced widget class (#44098).
  • And much, much more!

Please, test your code. Fixing issues that your code has with WordPress coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. helps you and millions of WordPress sites.

Props to @jeffpaul and @desrosj for contributing to this guide.

#5-8, #field-guide