Roadmap to 6.5

WordPress 6.5 is set to be released on March 26th, 2024. This release brings greater design control and optionality, more robust 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. capabilities with new APIs, access to current block theme functionality for classic themes, and the start of the new adminadmin (and super admin) redesign. More specifically, these significant features include the Font Library for easy global font management, support for Appearance Tools in Classic Themes for more expansive design options, and more robust 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. across the editing experience (including revisions for template parts and templates). New APIs like Interactivity, Custom Fields, and Block Binding expand block capabilities and underpin features like partial sync patterns, and PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher compatibility work ensures alignment with PHP versions. Rollback for 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 and theme updates enhances safety, and bugbug A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. fixes address various components for an improved user experience. The first taste of the admin redesign as part of phase 3 efforts are planned for this release in an iterative and contained way by bringing a new experience to the template, template part, and pattern lists within the Site Editor.

As always, what’s shared here is being actively pursued, but doesn’t necessarily mean each will make it into the final release of WordPress 6.5.

For a more detailed look at the work related to the block editor, please refer to the 6.5 board.

Design tools

Font Library

The Font Library makes it easy for anyone to install, remove, and activate fonts across your site. It’s available globally, independent of the theme activated, similar to the Media Library. Any installed font, whether installed by a user or a theme, can then be selected across the editing experience.

Follow this tracking issue for more information.

Syncing specific blocks and attributes of patterns

Building upon synced patterns, pattern overrides (previously called partial sync patterns) would allow users to ensure a synced layout and style across patterns while allowing each instance of the pattern to have customized content. This allows for consistency in design across different pieces of content. For instance, consider a testimonial pattern in a grid. With the enhanced feature, someone can insert this testimonial pattern into multiple posts, ensuring that the layout and styling components, such as the overall design of the recipe card, remain consistent across instances. Meanwhile, the content, such as Name, Image, and Role, would be local to each instance allowing for individual customization. Additionally, folks would then be able to revisit and modify the design of the overall testimonial pattern without affecting the content in existing instances. Of note, this work will need to align with the following Custom Fields API and Block Binding API

Follow this tracking issue for more information.

Section Specific Theme.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. and Colorways

Taking the high level styling system with features like style variations, section specific theme.json offers more granular control for defined parts of your site using that same underlying system. This is a broad set of work and, for 6.5, the aim is to bring color variations to group blocks via the idea of Colorways. Colorways is a subset of section-specific theme.json, with styling elements only. This option would only be available for Group blocks for 6.5 in a code only way except for a minor UIUI User interface to select. These styles would apply curated color, typography, border styles etc along with styles for elements (links, buttons etc). For now, the most common use case is a theme author creating them for a theme to provide a predefined set of colors that have been preselected based on appropriate contrast, aesthetics, and more. In the future, work is being explored to allow users to create them in the Styles interface. 

Follow this tracking issue for more information. 

Adoption pathways

Support for Appearance Tools in Classic Themes

Adding support for Appearance Tools opens a world of design options that, up until this point, have been only available with Block Themes, or themes using theme.json. For example, adding a simple border to a Group block requires support for Appearance Tools. Work is underway to allow Classic Themes to add support for most of these tools safely, without breakage, unlocking more design options for more sites in a big way.

Follow this tracking issue for more information.

Paving the way for improved Pattern management in Classic Themes

Thanks to some internal code changes, the path is being set for a future release to enable Classic Themes access to the new Patterns experience that the Site Editor provides. Separately, a link for Appearance > Patterns is going to be added for Classic Themes to make Patterns more readily accessible and visible as a feature. This will link to the current patterns experience already in Classic Themes.

Follow this tracking issue for more information.

Foundational experience

New data views for templates, template parts, and patterns in the Site Editor

This work kicks off aspects of the Admin Redesign effort in an iterative and contained way by bringing a new experience to the template, template part, and pattern lists within the Site Editor. The following features are planned:

  • Ability to display a table with specific fields, pagination and quick actions.
  • Toggling fields and sorting and filtering data by field.
  • UI for selecting entries and performing bulk actions.
  • Support for different layouts, like classic table, grid view (including gallery), with the option to display a side-by-side preview.
  • Support for saving and toggling between “views”, which are specific configurations of layouts, field visibility, etc.

This feature-rich experience provides immediate value both to the Site Editor and begins to lay the groundwork for future work related to Phase 3, including efforts around Workflows and Media Library.

Follow this tracking issue for more information.

Robust revisions

Revisions help create confidence when writing and creating, knowing your changes are always safely stored. For WordPress 6.5, templates and template parts will now display revisions, alongside broader upgrades to style revisions with plans for side by side comparisons, pagination, more detailed descriptions, and more.

Follow this tracking issue for more information.

Customize the Navigation block mobile overlay

6.5 seeks to move the needle with responsive controls by adding the ability to fully customize what your overlay menu will look like. The navigation overlay is the name for the menu that’s shown when you set and open a mobile menu. Having full control over this mobile menu would allow you to customize the colors, spacing, and blocks offering the option for a distinct menu experience across devices.

Follow this tracking issue for more information.

New APIs

Interactivity APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.

The Interactivity API aims to be a standard way to allow developers to add interactivity to the frontend of their blocks, like hearting a post or adding to cart without page loads. A standard makes it easier for developers to create rich, interactive user experiences, from simple cases like counters or popups to more complex features like instant page navigation, instant search, or carts and checkouts. After testing the API on specific coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. provided blocks for months in the 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/ plugin and, more recently, in core with WordPress 6.4, there are a few remaining tasks to expose the API for extenders: “store refactoring” based on feedback from early adopters, server-side directive processing that covers SEO requirements and optimizes initial renders, and adding support for ES Modules and import maps. Each of these are projects in their own right and will need to be evaluated for the release. 

Follow this tracking issue for more information.

Custom Fields API

This feature aims to create a simple way of connecting block attributes and Custom fields/metadata. Because this is such a broad undertaking, a scaled back version is planned for 6.5 that would accomplish the following:

  1. Connect block attributes and custom fields without a UI. 
  2. Include a basic UI to create these bindings where the API can read the metadata value
  3. Add the possibility to edit the value of the metaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. field directly through the editing experience.
  4. Add support for more core blocks based on importance and relevancy. 

Follow this tracking issue for more information.

Block binding API 

This API aims to connect block attributes to values, obtained from different sources, that might vary depending on the context. For example, a value like post_author that changes depending on the current post. This will expand the capabilities of existing blocks without the need to create new ones, which will empower theme developers and site owners. For example, having a heading block with the content of the Post Author without needing a new Post Author block. For 6.5, the work for this API will mainly be focused on serving other pieces of the roadmap, namely Custom Fields and Partial Sync Patterns. 

Follow this tracking issue for more information.

PHP compatibility work 

Several compatibility fixes are scheduled to ship with 6.5, with work underway to improve compatibility with PHP 8.0, 8.1, and 8.2.

Since the adoption of a tiered PHP 8+ compatibility plan, each release brings the opportunity to update official PHP compatibility information for the new, as well as previous, versions of WordPress. Using current data from each PHP 8.x version’s usage metrics and open compatibility issues, exceptions will be cleared or added, and updates applied to the version chart. Significant exceptions might also warrant a dedicated Make/Core post with additional details.

The official release of PHP 8.3 in late November means that site operators and hosting companies will want to know if WordPress 6.5 is compatible with the latest PHP. Technical exceptions called out on the PHP compatibility page do not provide many users a clear answer to this question. Barring any major issues with running 6.5 on PHP 8.3, it may be helpful to publish an official compatibility notice on WordPress/News (see this example clarifying WordPress 6.4 compatibility on PHP 8.1 and 8.2).

Rollback for plugin and theme updates for automatic updates

Building on prior efforts released in WordPress 6.3, rollbacks for automatic updates to plugins is underway. Specifically, this means that checks will be added to ensure that an updated plugin does not cause a PHP fatal error when the plugin is active during an auto-update.. If it does, this error is captured and the previously installed version is restored, along with an email sent to the site admin.

Follow this trac ticket for more information.

Plugin dependencies

Currently, any plugin that requires another plugin (i.e., a dependency) is on its own to make sure admins install the dependency since the plugin won’t work without it. To ease that process for everyone involved, work has been underway to create a consistent method to handle dependencies and provide a clear pathway for folks to know the relationship and take proper action while installing these kinds of plugins. Namely, the current approach prevents activation of a dependent plugin if its dependences are not installed and activated. If dependences suddenly become unavailable (such as if a dependency’s directory is manually deleted), the dependent plugin is automatically deactivated. To learn more about this effort, please review the Feature Project: Plugin Dependencies post.

Follow this trac ticket for more information.

Continued performance improvements

While performance is a constant focus and each new feature must be reviewed for performance impact, a few priority projects are on the performance team’s list to address for 6.5:

  • Revised translation loader to make localized sites more performant.
  • Enhance performance of (block) templates, template parts, and patterns with selective caching.

Outside of these larger initiatives, typing performance is receiving a specific focus with major improvements expected.

Bug fixes and UXUX User experience iterations

In TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress., there are already 41 tickets closed and 9 set for early across various components and focuses. It’s still early in the cycle so expect these efforts to continue. Additionally, various main tools and features of the editing experience have planned iterations like List View, background image support for the Group block, revisiting template vs content editing modes, expanding and refining block renaming, aligning page edit features in Site Editor and Post Editor, and adding a box shadow component

Raising the minimum version of MySQLMySQL MySQL is a relational database management system. A database is a structured collection of data where content, configuration and other options are stored. https://www.mysql.com/.

MySQL 5.0 was initially made generally available in 2005 and reached its end of life (EOL) in January of 2012, making it unsupported and insecure for over 12 years. This is extremely old and this requirement is being raised. In WordPress 6.5, the minimum required version of MySQL will be raised from 5.0 to 5.5.5. 

Read this post for more information.

Thank you to @richtabor @ironprogrammer @afragen @priethor @saxonafletcher for their help with this post.

Changelog

  • Jan 23rd 2024: updated the improved pattern experience section to clarify what’s being added for 6.5

#6-5, #release-roadmap