WordPress 6.9 Field Guide: Exploring New Developer Features
Explore the WordPress 6.9 Field Guide, detailing over 400 Core Trac tickets, major developer features, and enhancements for collaboration, editing, performance, and AI integration. Essential for developers.
The WordPress 6.9 Field Guide serves as a comprehensive overview of major developer-centric features and breaking changes introduced in this release. Published during the Release Candidate phase of the WordPress release cycle, it aims to inform WordPress extending developers, Core developers, and other interested parties.
Edit 11/25/25: The 'Miscellaneous Editor Changes' developer note was published after the initial Field Guide and has been added below.
This guide compiles all developer notes published during the beta cycle and is linked from the 'About' page of the corresponding WordPress version, the official release post, and the HelpHub version page.
WordPress 6.9 incorporates over 400 Core Trac tickets, with more than 125 representing enhancements and feature requests, and over 250 bug fixes. Specifically, this release includes:
- 35+ tickets focused on the Editor
- 15 tickets focused on wp-admin
- Over 45 tickets focused on performance
Additionally, the Block Editor, Site Editor, DataViews, and other related Core APIs benefit from 440 enhancements and over 570 bug fixes.
Below is a detailed breakdown of the most significant developer-related changes in WordPress 6.9:
Table of Contents
- New Ways to Collaborate
- Updates to Field API, DataViews and DataForms Components
- Improved Editing Tools and Architecture
- New Blocks and Block Improvements
- New & Improved APIs
- Optimized Performance
- Modernizing UTF-8 Support
- Updated Query Cache Handling
- Remove Support for Loading Assets Conditionally for IE
- Accessibility Updates
- PHP 8.5 Support
- Miscellaneous Developer Changes
- Miscellaneous Editor Changes
- Updated Admin Menu Search Query
- Additional Support for HTTPS in URL-escaping Functions
- Improved Email Handling and Inline Image Support
- AI-related Work Alongside 6.9
- But wait, there is more!
New Ways to Collaborate
WordPress 6.9 enhances content creation and management with new tools that foster collaboration and improve ease of use. Users can now add notes directly to blocks and leverage optimized DataViews, along with a command palette implemented across wp-admin.
Notes
Editors in WordPress 6.9 can write and reply to notes at the individual block level. This facilitates team collaboration, change tracking, and feedback during the editing process. Notes can be resolved, edited, or deleted, and the post author receives email notifications for new notes.
Updates to Field API, DataViews and DataForms Components
This release brings significant upgrades to the Field API, DataViews, and DataForms components.
The Field API has expanded its field type to include over 10 new field types, 11+ edit controls with validation support, more than 16 filter operators, user-input filters in filterBy, and readOnly options to disable field editing. Updated DataViews functions feature improved modals and text-based actions, infinite scroll, and the ability to build custom layouts with children that utilize DataViews’ internal state management and data handling logic. DataViews now also persists via @wordpress/views. DataForms has an improved panel, new card and row layouts, and revamped controlled validation.
Improved Editing Tools and Architecture
WordPress users can now drag and drop blocks more intuitively, hide blocks with a single click, and utilize the new WP_Block_Processor class to convert documents into a block structure. Page architecture is further improved through the continued integration of iframes.
Direct Drag and Drop
Drag and drop functionality has been enhanced, allowing users to directly move blocks within the site editor without a drag chip. This provides a faster, easier, and more intuitive editing experience.
Ability to Hide Blocks
WordPress 6.9 enables editors to hide and reveal blocks with a simple click.
Iframe Integration in Post Editor
As part of an ongoing initiative to move the post editor into an iframe, several changes have been implemented to support this transition:
- The
block.jsonschema now exclusively allowsapiVersion 3for new or updated blocks. - A warning will be displayed in the browser console when a block is registered using
apiVersion 1or2.
These changes are designed to help developers migrate their blocks to use apiVersion 3, with the ultimate plan to fully integrate the editor within an iframe in WordPress 7.0. While this change has undergone extensive research and testing, further testing by block and plugin developers is encouraged to identify any necessary improvements for future releases.
Streaming Block Parser
WordPress 6.9 introduces the new WP_Block_Processor tool, designed for scanning block structures within HTML documents. This new class traverses the document to analyze or adjust the block structure, providing a structural view without altering text. It converts documents into a nested array of block information and parsed JSON attributes.
New Blocks and Block Improvements
WordPress 6.9 includes an expanded block library with new and upgraded blocks. Highlights include a new math block, a new accordion block, terms query block, comments link and comments count blocks, and improved heading and time to read blocks. This release also features modified text editing capabilities with fitText block support, enabling automatic font size adjustment to fit text within its container boundaries, among other enhancements.
Perform Calculations using π in the Math Block
The new Math block adds support for MathML and LaTeX renderers, allowing mathematical expressions to be displayed in either block or inline mode. This block can be inserted into any rich text field, including tables, headings, and lists.
Collapsible Content with the new Accordion Block
The new Accordion Block in 6.9 supports custom styling and pattern capabilities. Learn how to style accordion blocks here.

Heading Block CSS Specificity Fix
6.9 includes a refined CSS selector for padding in headings that have a background. It now targets headings with both .wp-block-heading and .has-background classes, ensuring padding customizations only affect the intended block.
New & Improved APIs
Meet the Abilities API
The Abilities API enables WordPress Core, plugins, and themes to register their functionality in a unified, standardized, and machine-readable format. This API is a key component of the broader "AI Building Blocks for WordPress" initiative, aimed at providing tools for extenders to natively integrate AI functionalities into WordPress.
Updates to Interactivity API
In WordPress 6.9, the Interactivity API now offers a standardized method for assigning unique IDs to its directives, preventing conflicts when multiple similar directives are applied to website elements. The getServerState() and getServerContext() functions have been updated. A new algorithm optimizes script and stylesheet handling, enhances support for router regions in interactive elements, and adds a new attachTo property, which acts as a CSS selector pointing to the parent element for router rendering.
Updates to HTML API
The HTML API has been refined in 6.9 with numerous bug fixes and enhancements. WP_HTML_Processor::serialize_token() is now public, extending the safety of the HTML API to external code modifying and combining HTML. Additionally, set_modifiable_text() now rejects SCRIPT element contents that could disrupt its normal closing.
Improved Block Binding API
The updated Block Bindings interface in 6.9 focuses on usability, featuring the ability to switch between sources and bind or unbind attributes with a single click. The new block_bindings_supported_attributes_{$block_type} filter facilitates customizing how a block’s attributes connect to a Block Bindings source.
Optimized Performance
WordPress 6.9 delivers significant performance improvements designed to enhance the site loading experience for visitors. Improvements to the Largest Contentful Paint (LCP) metric are achieved by implementing on-demand block styles for classic themes, minifying block theme styles, and increasing the limit for inline styles – all contributing to reduced render-blocking. The critical rendering path is decongested by deprioritizing non-critical scripts (e.g., for interactive blocks and emoji detection) that previously competed with loading essential resources like the LCP element’s image. Page stability is also improved by preventing the Video block from causing layout shifts.
Many other enhancements are included, such as optimized database queries, improved caching, better spawning of WP Cron, and a new template enhancement output buffer, which paves the way for numerous future optimizations.
Modernizing UTF-8 Support
A new fallback pipeline, written in PHP, enables WordPress 6.9 to process text encoding and UTF-8 handling independently of the running environment. This ensures greater reliability across WordPress environments and for themes and plugins working with international content and emojis.
Updated Query Cache Handling
The 6.9 release changes how cache keys are generated when caching queries performed through WP_Query. While persistent object cache drop-ins should remain unaffected, developers and web hosts should note these changes and leverage the four new functions introduced.
Remove Support for Loading Assets Conditionally for IE
WordPress 6.9 discontinues support for enqueuing scripts and styles with legacy conditional statements targeting specific versions of Internet Explorer conditional. All remaining related checks have also been removed from the default themes, continuing an effort that began in #56699. The code related to Genericons has also been updated for themes that included this webfont.
Accessibility Updates
WordPress 6.9 includes 10 enhancements and 23 bug fixes focused on accessibility. These provide new and improved screen reader notifications, enhanced semantics and focus management, and updated CSS generated content to prevent excessive content from being read.
PHP 8.5 Support
WordPress 6.9 introduces "beta support" for PHP 8.5, addressing all known incompatibilities, warnings, and notices, while maintaining support for older PHP versions (currently 7.2 and up). "Beta support" is a label applied to PHP versions with less than 10% usage across all WordPress sites.
Miscellaneous Developer Changes
A range of additional developer-related updates enhance both the user experience and the development experience. These changes span various areas of WordPress Core, including media, multisite, new hooks, and browser interactions. Though individually minor, they collectively contribute to ongoing efforts to improve WordPress usability and establish a more predictable and flexible foundation for developers.
Miscellaneous Editor Changes
The 6.9 release also brings a number of miscellaneous developer-focused changes within the Block Editor. Be sure to read this dev note to stay up-to-speed!
Updated Admin Menu Search Query
In WordPress 6.9, the search query used by the admin menu has transitioned from $_SERVER['QUERY_STRING'] to $_GET. This change makes search behavior more predictable and avoids issues stemming from reliance on the raw query string. Extensions that override or inspect admin menu search behavior should review any assumptions about how the menu search value is retrieved.
Additional Support for HTTPS in URL-escaping Functions
In WordPress 6.9, the esc_url(), esc_url_raw(), and sanitize_url() functions can now be configured to prepend https:// to a URL that does not already contain a scheme by default when 'https' is the first item in the $protocols array.
Improved Email Handling and Inline Image Support
WordPress 6.9 introduces several updates that make the email system more reliable and flexible for developers. The wp_mail() function now sets sender addresses in an extensible way, protects encoding headers between calls, and more consistently leverages PHPMailer for content type handling. Many long-standing bugs related to header handling and message formatting have also been resolved.
This release also adds support for inline and embedded images in HTML emails, enabling developers to send richer message templates without relying on external image URLs. Email content that uses cid: based references can now render images directly inside the message, opening up cleaner options for branded notifications, transactional emails, and plugin-generated workflows.
AI-related Work Alongside 6.9
PHP AI Client
The new PHP AI Client SDK simplifies the integration of AI capabilities with plugins and PHP projects. This interface works with all AI providers, allowing developers to specify AI abilities, providers, and models. Credentials are centrally managed and function across all compatible plugins.
MCP Adapter
The new MCP Adapter utilizes the Model Context Protocol (MCP) to standardize application interactions with LLMs, expose abilities to AI assistants, and connect with other MCP servers. This allows WordPress to act as both a server and a client, registering its capabilities through the Abilities API for AI assistants to discover and use, while also integrating with other MCP servers to leverage external AI tools within WordPress.
But wait, there is more!
WordPress 6.9 offers even more! Over 250 bugs, 123 enhancements and feature requests, and 22 blessed tasks have been marked as fixed. Here are a few additional highlights:
- Abilities API: Roadmap to WP 6.9: defining and deciding (
AI-83) - Accessibility: Navigation block: fix submenu Escape key behavior (
GB-69834) - Editor: Button Block: Add HTML Element selection in Advanced settings (Accessibility) (
GB-70139) - Editor: Enable the Command Palette everywhere in admin dashboard (
GB-58218) - Editor: New block additions for the Block Library (
GB-71026) - Editor: Toolbar: Adjust colors for dark mode support (
GB-66454) - General: Replace deprecated / non-standard
CSSforspeakandaural(accessibility) (GB-63603) - Global Styles: Move
Randomize colorsbutton to Edit Palette panel (GB-66169)
Thank you to everyone who contributed to this version of WordPress – whether through code, testing, or other means – your contributions matter and help Make WordPress.
Props to @desrosj, @jorbin, @sabernhardt, @joedolson, @priethor, @jeffpaul, @westonruter, @davidbaumwald, @akshayar, and @annezazu for review.