The WordPress coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. development team builds WordPress! Follow this site forย general updates, status reports, and the occasional code debate. Thereโs lots of ways to contribute:
Found a bugbugA 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.?Create a ticket in the bug tracker.
Weโre holding an open WordPress 7.0 product review Thursday, February 19th, and would love input from contributors across teams.
This will be a 90-minute working session to review where 7.0 stands and align on the story weโre telling as we head toward release. @matveb will lead the call as the 7.0 Release LeadRelease LeadThe community member ultimately responsible for the Release..
Planned topics:
Adminadmin(and super admin) refresh designs
AI integrations and connectors
Key product highlights and overall direction
The goal is to leave with clear bullet points that can feed directly into the 7.0 release post and WordCampWordCampWordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what theyโve learned throughout the year and share the joy. Learn more. presentations.
Edits: 03/10/26 Add security BetaBetaA pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. 4, 3/19/26 Update date for RC1, 4/5/26 Update to reflect delay
WordPress 7.0 is scheduled for release on April 9, 2026! Below is the proposed calendar with expected start times for each release party, and the release squad contributors involved in release parties for the upcoming 7.0 milestone.
This release party schedule will stay in effect during the Release Candidaterelease candidateOne of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). phase and the final release of WordPress 7.0. This enables contributors to attend and assist with release testing during the final weeks of the release cycle.
As always, there may be last-minute adjustments. The release squad will do its best to communicate any changes promptly by publishing a post on the change, and updating this post as the canonical reference.
Emcee / Release LeadRelease LeadThe community member ultimately responsible for the Release.
CommittercommitterA developer with commit access. WordPress has five lead developers and four permanent core developers with commit access. Additionally, the project usually has a few guest or component committers - a developer receiving commit access, generally for a single release cycle (sometimes renewed) and/or for a specific component.
@audrasjb Committing from WordCampWordCampWordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what theyโve learned throughout the year and share the joy. Learn more. Nice Contributor DayContributor DayContributor Days are standalone days, frequently held before or after WordCamps but they can also happen at any time. They are events where people get together to work on various areas of https://make.wordpress.org/ There are many teams that people can participate in, each with a different focus. https://make.wordpress.org/support/handbook/getting-started/getting-started-at-a-contributor-day/!
RCrelease candidateOne of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). 1
Everyone is encouraged to attend WordCamp Asia, but traveling and attending the event is not required to participate in the General Release Party. The release party will still happen in the #core channel in SlackSlackSlack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/.
@desrosj is leading the coordination between the release squad and WordCamp Asia organizing team for the Dry Run and General Release schedules. More details will be announced as soon as they are finalized.
Nominations for CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. Team Reps 2026
The nomination process for Core Team Representatives for 2026 is over. We are putting together the nominations, then a poll will probably be opened for voting. It will stay open for two weeks. Stay tuned.
WordPress 6.9.1
It was released yesterday! Congrats to everyone involved in this release!
Iโd like to mention I have posted a detailed progress update for the Client Side Media feature on the tracking issue. The summary is: last week we landed the wordpress/worker-threads package, which unlocks running VIPS directly in a worker thread. This means the feature can now be tested. Also: the final 7 pre-betaBetaA pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. PRs are nearly ready for review. The main thing I need support on is code reviews and testing!
This was cross-posted on the #core-editor channel.
โWhatโs new in GutenbergGutenbergThe 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/โฆโ posts (labeled with the #gutenberg-new tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, hereโs an overview of different ways to keep up with Gutenberg and the Editor.
It brings practical refinements for your editing workflow. You can now add custom CSSCSSCascading Style Sheets. to individual blocks, and the Image blockBlockBlock 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. shows aspect ratio controls for wide and full alignments. List View gets more useful with full block titles and actual content displayed for list items. The release also stabilizes viewport-based block visibility and pattern editing, plus adds focal point controls for fixed Cover backgrounds and text column support for Paragraphs.
Table of contents
Custom CSS Support for Individual Blocks
Gutenberg 22.5 brings custom CSS support for individual block instances, letting you write styles that target specific blocks without affecting others of the same type. A has-custom-css class is automatically added in both the editor and frontend for dynamic blocks, making your custom styles easier to manage. If youโve been working around this limitation with extra wrapper blocks or global CSS, your workflow just got simpler. (73959, 74969)
Image Block: Aspect Ratio Control for Wide and Full Alignment
The Image block now shows aspect ratio controls when you choose wide or full alignment. Previously, aspect ratio options only appeared for default-aligned images, a limitation when designing hero sections or full-width layouts. Now you can lock in your preferred proportions regardless of alignment, giving you more consistent control over how images display across different screen sizes (74519)
List View Improvements
Two enhancements make List View considerably more useful in this release. Youโll now see full block titles instead of truncated labels, and List Items display their actual content rather than generic โList Itemโ text. When youโre navigating complex documents with nested lists, these small changes make a real differenceโyou can finally tell your list items apart at a glance (74798, 74794)
Other Notable Highlights
Cover Block: Focal point picker for fixed backgrounds: You can now set a focal point even when using fixed/parallax backgrounds (74600).
Paragraph Block: Text column support: Paragraphs can now flow into multiple columns directly via block supports (74656).
Navigation: Submenus always open option: A new toggle lets you keep submenus permanently expanded rather than requiring hover/click (74653).
In-editor revisionsRevisionsThe 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. (initial implementation: Early groundwork for viewing revisions directly in the editor, though without โdiffingโ yet (74771).
Changelog
Enhancements
Block Library
Add custom CSS support for individual block instances. (73959)
Add theย has-custom-cssย class name to the editor and dynamic blocks. (74969)
Allow for themes to define the overlay attribute without using a theme slug. (74119)
Image block: Show aspect ratio control for wide and full alignment. (74519)
List Item: Show content instead of block name in List View. (74794)
Navigation Overlay:
Add sidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. preview. (74780)
Add a new option that toggles submenus always open. (74653)
Donโt use a nav tagtagA directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) for navigation blocks inside overlays. (74764)
Real-time collaboration: Add default HTTPHTTPHTTP is an acronym for Hyper Text Transfer Protocol. HTTP is the underlying protocol used by the World Wide Web and this protocol defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. polling sync provider. (74564)
Real-time collaboration: Use relative positions in undo stack. (74878)
Bug Fixes
Core backportbackportA port is when code from one branch (or trunk) is merged into another branch or trunk. Some changes in WordPress point releases are the result of backporting code from trunk to the release branch. for gutenberg_filter_global_styles_post: Protect from KSES mangling. (74731)
DataForm: Sync ReactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
https://reactjs.org-level validation to native inputs on date fields. (74994)
DataViews: Use regular casing for bulk selection count. (74573)
Fix typo in comment for value change check. (74730)
ShortcodeShortcodeA shortcode is a placeholder used within a WordPress post, page, or widget to insert a form or function generated by a plugin in a specific location on your site.: Fix non-string attribute values being silently dropped. (74949)
Cover Block: Show current embed URLURLA specific web address of a website or web page on the Internet, such as a websiteโs URL www.wordpress.org in dialog. (74885)
Embed: Fix Flickr double-padding with responsive wrapper. (73902)
Fix : Image caption blur in Gallery block. (74063)
Fix: Add border-box sizing for verse block. (74722)
Inspector tabs: Reset tab selection if the selected tab is no longer present. (74682)
Make custom navigation overlay full width. (74559)
Media & Text: Revert โFixed Media & Text Block โ Image not rendered properly on frontend when inside stack (#68610)โ. (74715)
Pattern Editing: Update template part to use tabs. (74793)
Post ExcerptExcerptAn excerpt is the description of the blog post or page that will by default show on the blog archive page, in search results (SERPs), and on social media. With an SEO plugin, the excerpt may also be in that pluginโs metabox. Block: Fix excerpt trimming logic to handle whitespace correctly. (74925)
Post Excerpt Block: Fix length limits for both Editor and Front and fix ellipsis consistency. (74140)
Show submenu colors but remove the word overlay. (74818)
fix: Video block: video URLs pasted without โhttps://โ show broken media. (74964)
Block Editor
Allow grid layout to use theme blockGap values for columns calculation. (74725)
Block Editor Provider: Fix editor error for contributor role when client-side media experiment is active. (74680)
Direct drag: Fix glitching around scrolling. (74608)
Ensure grid column never exceeds parentโs width. (74795)
Fix missing onClose prop for InserterMenu. (74920)
Fix: Fit Text not working on calculated line heights. (74860)
Fix: Safari โEdit as HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.โ for Fit Text deletes content. (74864)
Fix: Stretchy text issue when nested on flex containers. (73652)
List View: Ensure element exists in document before focusing. (74613)
Pattern Editing: Prevent double-click editing for template parts and synced patterns. (74755)
Calculate viewport based on iframeiframeiFrame is an acronym for an inline frame. An iFrame is used inside a webpage to load another HTML document and render it. This HTML document may also contain JavaScript and/or CSS which is loaded at the time when iframe tag is parsed by the userโs browser. size in resizable editor. (75156)
Collaboration
Real-time collaboration: Do not wrap persisted doc applied update in transaction. (74753)
Sync: Refactor ProviderCreator signature to an object. (74871)
Interactivity APIAPIAn 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.
iAPI Router: Fix initial router regions withย attachToย being duplicated afterย navigate(). (74857)
iAPI Router: Prevent router regions withย data-wp-keyย from being recreated on navigation. (74750)
iAPI: Fix and refactor runtime initialization logic. (71123)
DataViews
Fix actions visibility on smaller viewpoints and for lone action with isPrimary as true. (74836)
Fix insert left and right handling in table layout for RTL languages. (74681)
Fix: Escape less-than character in HTML attributes to prevent block recovery errors. (74732)
Patterns
Restore pattern categoryCategoryThe 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. actions for user patterns. (74927)
Update performance results endpoint to codevitals.run. (74802)
Use fetch API for performance results logging. (74803)
Experiments
Route: Add notFound to public API and add route validation. (74867)
Media
Media Modal Experiment: Add a simple notices-based uploading state. (74965)
Collaboration
Real-time Collaboration: Add user and selection information to awareness. (74728)
Post Editor
Media Editor: Add a simple media editor package and integrate into the editor package. (74601)
Block Library
Donโt show overlay settings for navigation blocks that are inside othโฆ. (74408)
Documentation
Added Missing Global Documentation class-wp-rest-block-editor-settings-controller file. (74973)
Added Missing Global Documentation extensibleExtensibleThis is the ability to add additional functionality to the code. Plugins extend the WordPress core software.-site-editor file. (74868)
Badge: Use stories for โChoosing intentโ doc. (74675)
DataViews: Update storybook to add more context. (74819)
Docs: Add missingย @returnย tags to experimental functions. (74960)
Docs: Standardize use ofย @linkย tag for URL references in lib directory. (74984)
Update wp-build documentation to describe โwpPlugin.nameโ. (74741)
Updated Typo in Rest APIREST APIThe 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/ File. (74718)
iAPI Docs: Add configuration to state/context guide. (71355)
iAPI: Donโt use deprecatedย data-wp-on-asyncย in documentation. (72591)
iAPI: Update deprecation warning for unique ID format. (74580)
Move grid manual mode sync into 7.1 folder. (74792)
Update: Preserve additional metaMetaMeta 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. properties on client side abilities. (73918)
Comments Title: Copy deprecate from block.jsonJSONJSON, 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. to deprecated.js to avoid legacy attribute usage. (74924)
Addย displayNameย to the anonymous components. (74716)
SlotFill: Unify registry and fill implementation. (68056)
Block Editor
Block Visibility: Fix failing unit testunit testCode written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression.. (74840)
Post Editor
Blocks: Always trigger borwser console warnings for blocks with apiVersion below 2. (74057)
e2e: Fix flaky tests for settings sidebar. (74929)
end-to-end tests: Bump all test blocks to API v3. (74941)
end-to-end tests: Removeย switchToLegacyCanvasย from multi select and a11yAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both โdirect accessโ (i.e. unassisted) and โindirect accessโ meaning compatibility with a personโs assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) suite. (74845)
end-to-end tests: Remove switchToLegacyCanvas from inserter drag and drop tests. (74892)
eslint-pluginPluginA 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.: Add โneverโ option for dependency-group rule. (74990)
selectBlock: Fall back to next block if no previous block is present. (74938)
Build Tooling
Build script: Increase memory limit for storybook build process. (74933)
Build: Deduplicate and minify embedded styles. (74651)
Icons: Add a manifest containing icons metadata. (74943)
WordPress 6.9.1 Release Candidaterelease candidateOne of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). 1 (RC1) is available for testing! Some ways you can help test this minor releaseMinor ReleaseA set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality.:
Use the WordPress Beta TesterpluginPluginA 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.
As this is a minor RCrelease candidateOne of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). release, select the Point ReleaseMinor ReleaseA set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality. channel and the Nightlies stream. This is the latest build including the RC and potentially any subsequent commits in trunktrunkA directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision..
Use WP-CLIWP-CLIWP-CLI is the Command Line Interface for WordPress, used to do administrative and development tasks in a programmatic way. The project page is http://wp-cli.org/https://make.wordpress.org/cli/ to test: wp core update https://wordpress.org/wordpress-6.9.1-RC1.zip
6.9.1 RC1 is a release candidate for a maintenance release with a focus on bugs introduced in WordPress 6.9. In total, this RC features fixes for 23 issues throughout Core and 25 for the Block Editor.
The following coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. tickets are included:
#63979 โ WordPress Core setup does not configure XDebug properly
#64229 โ Enqueueing scripts, styles, and script modules should warn when dependencies are missing
#64329 โ BlockBlockBlock 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. Processor tests fail without intl extension
#64333 โ I18Ni18nInternationalization, or the act of writing and preparing code to be fully translatable into other languages. Also see localization. Often written with a lowercase i so it is not confused with a lowercase L or the numeral 1. Often an acquired skill.: border.radiusSizes key is missing in theme-i18n.jsonJSONJSON, 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.
#64336 โ One removed SimplePie file was not added to `$_old_files` in WP 6.9
#64337 โ Broken styling on โAdd Pluginsโ screen
#64340 โ HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.APIAPIAn 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. may double-escape class names when adding repeatedly
#64347 โ Fatal error when `wxr_cdata()` is called with non-string value
#64348 โ The `$embeds` element is missing from the `wp_mail_succeeded` filterFilterFilters 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.
#64350 โ checkbox not working as expected in the adminadmin(and super admin) panel
#64366 โ Docs: Replace since x.y.z with actual version number
#64368 โ `Could not instantiate mail function` errors sending mail in 6.9
#64380 โ Widgets sidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. and position canโt be changed with accessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both โdirect accessโ (i.e. unassisted) and โindirect accessโ meaning compatibility with a personโs assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) mode enabled
#64412 โ Sporadic unit testunit testCode written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression. failure in Tests_REST_WpRestUrlDetailsController::test_get_items
#64354 โ Outlined buttons now have grey background
#64136 โ PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher Deprecated: Fetching multiple feeds with single SimplePie instance is deprecated since SimplePie 1.9.0
The following GutenbergGutenbergThe 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/ PRs are included:
#71123 โ iAPI: Fix and refactor runtime initialization logic
#72376 โ Fix Popover closing unexpectedly when a Menu inside it is closed.
#73835 โ Color Panel: Ensure minimum height for popover content
#73865 โ Classic Block: Restore HTML editing option
#73867 โ Block API: Fallback to all attributes when checking for unmodified block
#73955 โ Global Styles: fix infinite loopLoopThe Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop in Font Style UIUIUser interface
#74130 โ Terms Query Block: Fix Max terms for non-hierarchical taxonomies
#74177 โ Fix: Prevent accordion-heading submitting/sending forms (button type=โbuttonโ )
#74282 โ Fix: menu_order validation to allow zero and negative values
#74580 โ iAPI: Update deprecation warning for unique ID format
#74715 โ Media & Text: Revert โFixed Media & Text Block โ Image not rendered properly on frontend when inside stackโ
#74057 โ Blocks: Always trigger borwser console warnings for blocks with apiVersion below 2
#74340 โ Fix parent popover not closing on click outside
#74750 โ iAPI Router: Prevent router regions with data-wp-key from being recreated on navigation
#74857 โ iAPI Router: Fix initial router regions with attachTo being duplicated after navigate()
#74860 โ Fix: Fit Text not working on calculated line heights.
#74864 โ Fix: Safari โEdit as HTMLโ for Fit Text deletes content
#74927 โ Patterns: restore pattern categoryCategoryThe 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. actions for user patterns
#73652 โ Fix: Stretchy text issue when nested on flex containers.
#74799 โ [WP 6.9.1] Remove formatting controls restriction private API
Whatโs next?
Reminder: the dev-reviewed workflow (double committer sign-off) is required when making changes to the 6.9 branchbranchA directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch"..
The final release is expected on Tuesday, February 3, 2026. This date is subject to change if any issues with RC1 are discovered. Coordination will happen in the WordPress.orgWordPress.orgThe 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/SlackSlackSlack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/#6-9-release-leads channel, and releases are always packaged and tested in #core.
A special thanks to everyone who reported issues, helped test, and helped create patches. The success of 6.9.1 depends on proper testing, so please lend a helping hand.
The WordPress 6.9.1 maintenance release is planned on February 3, 2026, with a first BetaBetaA pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. release on January 29, 2026.
@jorbin noted that help is still needed on the following tickets/PR:
Whatโs new inย GutenbergGutenbergThe 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/ย 22.4
As a new contributor @indigochill asked whether ticketticketCreated for both bug reports and feature development on the bug tracker.#60726 was a good way to start contributing to WordPress Core. @johnbillion, @jorbin and @audrasjb confirmed that it is a nice first ticket to learn how to contribute to Core as it is self-contained and clearly documented, but encouraged them to thoroughly read all the comments in the ticket to make sure to understand the full background of the ticket and its history.
Itโs time to get WordPress 7.0 ready for release, and help is needed to ensure itโs smooth and bugbugA 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.-free. Whether youโre an experienced contributor or joining in for the first time, everyone is welcome! ๐
Schedule Overview
Regular bug scrubs are being held twice a week with @audrasjb and @juanmaguitar leading them. As the release date approaches and activity ramps up, the number of scrubs may be increased. These efforts will help ensure everything is on track for a smooth launch. Participation is welcome at any of these sessions, so feel free to join. Bring questions, ideas, and letโs scrub some bugs together!
7.4 is currently at ~22% of all WP sites. So letโs find ways to work with Hosts and site owners to decrease that number.
WordPress 6.9.1 Release Schedule
The WordPress 6.9.1 maintenance release is planned on February 3, 2026. See theย release schedule announcementย for more information.
@jorbin shared this update: โJust a general note that here are multiple scrubs being held each week (see the 6.9.1 announcement). If you want to join for one of those or feel free to work on any of the tickets in tracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. or GitHubGitHubGitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the โpull requestโ where code changes done in branches by contributors can be reviewed and discussed before being merged by the repository owner. https://github.com/ in your own time. You may see pings on those tickets, if you are able to help it would be appreciated as we work to resolutions on these. No concerns as of now, we seem to be in good shape for a release on 3 February.โ
This post summarizes the feedback received from theย WordPress 6.9 retrospective. Thank you to those who contributed their feedback via the retrospective survey and comments on the post!
For ease of reading, feedback has been synthesized. Full feedback is available for review in theย anonymized form responsesย and comments to the original post.
Please remember that the following feedback are suggestions to bear in mind for future releases rather than action items for implementation.ย
What would you keep?
Having two triagetriageThe act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. leads in different parts of the globe seemed to work well getting more contributors involved.
Clearer test instructions.
Long-term planning, regular check-ins, commit freeze, and a consistent cadence made the release feel stable and well-managed.
What would you add?
More automation for defined, common steps within the release cycle could help reduce stress.
Better documentation for the tasks required by the different release leads.
More community suggestions into CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress..
Earlier on boarding for release squad members.
What would you change, reduce, or remove?
Release Candidates should be tested more extensively.
Points of contact and ownership should be more clear, especially for new contributors.
Reduce manual work by increasing automation where possible.
What else would you like to express about any part of the release cycle or release squad?
The 6.9 release was well coordinated despite its size and complexity, reflecting significant effort from contributors and release leads.
There is a need for better communication with teams indirectly involved with the release, especially Documentation.
Releasing during a major event (SOTW in this case) was exciting but can limit who is able to take part due to various logistical factors (travel funds, VISAs, time differences, etc). Also requires planning further in advance.
The release squad was highly collaborative. Leads were trusted to complete the work required of their role.
Lots of contributors and committers were around and made themselves available to answer any questions the squad members had.
Tracking and guiding all release-related activity across TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. and GitHubGitHubGitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the โpull requestโ where code changes done in branches by contributors can be reviewed and discussed before being merged by the repository owner. https://github.com/ is a huge undertaking due to the volume of activity. This can place a lot of strain on the team.
Did you have an official role on the release squad during the 6.9 release?
This section describes if the survey participants are part of release squad or observer.
Did you contribute to the 6.9 release?
This section describes if the participants actually contributed to 6.9 release or not.
How did collaborating on this project feel?
This section included ways for one to indicate how much they agreed or disagreed with a statement around collaboration.
Would you like to be part of future release squads?
17.6%: I havenโt been part of a release squad and currently have no interest in it.
11.8%: I havenโt been part of a squad but I would like to try in the future.
5.9%: I have been part of a release squad but will not repeat in the near future.
67.4%: I have been part of a release squad and I will gladly repeat
What is your feedback on the current release squad size?
Takeaways and next steps
Find ways to assemble and onboard a squad for the next release earlier.
Review the Core Handbook for missing documentation.
Figure out how to make responsibilities for release-related tasks more clear.
Investigate how parts of the release process could possibly be automated.
Find new ways to encourage wider testing during the betaBetaA pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process./RCrelease candidateOne of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). period.
Make it more clear which contributors are knowledgeable and available to help for specific tasks or areas of the project.
Pairing up an experienced and inexperienced contributor in each role is a good way to โlevel upโ those who are looking to participate in a release squad for the first time.
Props toย @akshayar & @desrosjย for compiling responses, authoring, and @jeffpaul, @jorbin for reviewing this post.ย
โWhatโs new in GutenbergGutenbergThe 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/โฆโ posts (labeled with the #gutenberg-newtagtagA directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.)) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, hereโs an overview of different ways to keep up with Gutenberg and the Editor.
This release covers typography, patterns, images, and responsive design. The Font Library now works with classic and hybrid themes. Pattern Overrides expanded to custom blocks. The Image blockBlockBlock 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. got focal point controls. And thereโs an experimental feature for hiding blocks based on screen size.
Classic and Hybrid Theme Support for the Font Library
The Font Library and Global Styles now work with classic themes (#73971, #73876). Like the Media Library, you can access the Font Library as a modal or through a dedicated adminadmin(and super admin) sectionโregardless of your theme type.
Pattern Overrides: Custom Block Support
Custom blocks can now use Pattern Overrides. (#73889)
Since WordPress 6.5, Pattern Overrides let you create synced patterns where the layout stays consistent but specific content can change per instance. The catch? Only four coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. blocks supported it: Heading, Paragraph, Button, and Image.
Not anymore. Any block attribute that supports Block Bindings now supports Pattern Overrides by default. Block authors can opt in through the server-side block_bindings_supported_attributesfilterFilterFilters 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.. This closes a long-requested enhancement and opens up synced patterns to custom blocks.
Image Block: Focal Point Controls
The Image block now has focal point controls. (#73115) Set a focal point on any image to control which part stays visible when the image is cropped for different screen sizes or aspect ratios. The picker is built into the Image block settings, so you can adjust it without leaving the editor.
Block Visibility Based on Screen Size (Experimental)
A new experimental feature lets you hide or show blocks based on screen size. (#73949, #74249, #74379)
Site builders have been asking for this foreverโcontrol block visibility across devices without writing CSSCSSCascading Style Sheets.. The feature includes a viewport modal for setting visibility rules, backend support for generating CSS, and visual indicators showing which blocks are hidden at different screen sizes. Itโs experimental for now and requires enabling the experiment flag.
Other Notable Highlights
A few more highlights worth mentioning:
Real-Time Collaboration is no longer experimental. (#74562) The code has moved out of experimental status ahead of planned inclusion in WordPress 7.0. Note that a default provider isnโt in place yet.
Verse and Quote blocks can now transform into each other. (#73068) Finally fixes the annoyance of similar blocks not being interchangeable.
Dimension presets for width and min-height. (#73811) Theme developers can define preset dimension values in theme.jsonJSONJSON, 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. that appear when users set block widths or minimum heights.
Query LoopLoopThe Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop block can exclude terms. (#73790) Much easier than the old workaround of manually adding every term except the one you donโt want.
Paragraph block supports wide and full alignment. (#73958) Useful for theme developers working with wide and full alignment CSS in block layouts.
Notes appear even when template lock is enabled. (#74577) The Notes feature (added in WordPress 6.9) now shows up regardless of template lock mode.
Changelog
Features
Collaboration
Real-time collaboration: Move collaborative editing from experiments to default Gutenberg pluginPluginA 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. experience. (74562)
Add autoComplete attribute to prevent browser autocomplete. (74595)
Add list view inspector tab for pattern editing. (74574)
Block Inspector: Update the design of the style variation to use ToolsPanel. (74224)
Block variation transformation: Change position and threshold. (74251)
ContentOnlyControls: Polish headerHeaderThe header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitorโs opinion about your content and you/ your organizationโs brand. It may also look different on different screen sizes. style. (74260)
Enhance Notice actions to allow more props like disabled and onClick with URLURLA specific web address of a website or web page on the Internet, such as a websiteโs URL www.wordpress.org. (74094)
Preview drop down: Align preview editing widths with common breakpoints. (74339)
Block APIAPIAn 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.
Annotations: Maintain active formats after applying. (73575)
Block Bindings: Remove caption from edit on EditWithGeneratedProps. (73552)
Command Palette: Fix in the font library page and site editor experiment. (74232)
Core Merge: Deduplicate Font Library page and routes. (74381)
Customize: Preserve CSS cascade for Additional CSS in classic themes. (74593)
DataForm: Fix panel field inaccessible when empty with labelPosition none or top. (74264)
Fix document title htmlHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. entities. (74027)
Fix punctuation and formatting in README.md. (74440)
Fix the dataviews experiment locked fields position on toggle. (74326)
Fix: Menu_order validation to allow zero and negative values. (74282)
Font Library: Allow the sidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. to be scrolled in boot powered pages like fonts. (73960)
Image Cropper package: Add reactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
https://reactjs.org peer dependencies. (74402)
Preferences: Add TypeScript types to package.json exports. (73276)
Theme: Fix design-tokens.js entrypoint to specify types and CJS variants. (74129)
[create-block] Updates variant handling for missing directory files. (73986)
api-fetch: Add named export to fix TypeScript callable issues. (74576)
Editor: Remove extra comma from offline error notices. (73907)
Scroll to previous location in document with editor back button. (73737)
Block Library
Block Fields: Remove normalization code and tidy up. (74532)
Block Library: Fix discussion settings data selection. (74026)
Categories Block: Fix CSS collision with labels. (73862)
Comments Title Block: Fix double quotes in non-English locales. (74330)
Remove block selection clearer handling from iframeiframeiFrame is an acronym for an inline frame. An iFrame is used inside a webpage to load another HTML document and render it. This HTML document may also contain JavaScript and/or CSS which is loaded at the time when iframe tag is parsed by the userโs browser.. (73753)
Replace default block on paste if it has no content. (73951)
Rich Text: Make inline toolbar more reactive for proper positioning. (73853)
WidgetWidgetA 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. Group: Remove parent outline. (74107)
Fix: Align Document Outline padding in List View sidebar to match surrounding panels (#73576). (73595)
Global Fonts: Convert relative font URLs to absolute theme URLs in font-face styles. (74115)
Global Fonts: Correctly convert relative font URLs to absolute theme URLs in font-face styles. (74137)
Site editor global styles settings: Ensure generated global styles are correct in canvas between views. (73952)
Site editor global styles settings: Preserve non-global styles in default site editor settings. (74088)
Theme_JSON_Resolver: Defensively cover against situations where the post is null. (74124)
Components
Add checkerboard pattern for background in featured imageFeatured imageA featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts. preview. (74091)
Fix DateTimePicker timezone handling for non-string values. (73887)
Fix InputControl label overflow for long translations. (74301)
Improve memoization in the overrides panel. (74407)
Fix bindableAttributes only being returned for the selected block. (74061)
AccessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both โdirect accessโ (i.e. unassisted) and โindirect accessโ meaning compatibility with a personโs assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)
Block Editor
Update: Use 12px as minimum font size for warning on fit text. (74387)
@wordpress/keycodes: Add ariaKeyShortcut and shortcutFormats exports. (74205)
Stretchy Text: Accept very small font sizes, and show a warning. (73730)
Components
Validated form controls: Suppress native popover. (73471)
Performance
Block Library
Blocks: Cache URL root when registering assets. (74451)
Add experiment for hiding blocks based on screen size. (73949)
Block Visibility: Fix block position shift when toggling. (74535)
Block visibility: Incorrect argument passed to hasBlockSupport in isBlockHidden. (74151)
Block visibility based on screen size: Add backend block support. (73994)
Block visibility support: Use CSS range syntax for media queries. (74526)
Block visibility based on screen size: Add rules to hide on viewport size. (74379)
Block visibility: Add viewport modal and controls UI. (74249)
Block visibility: Add visibility notice for hidden blocks in the block inspector. (74180)
Block visibility based on screen size: Basic clientside state. (74025)
Block Library
PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher-only blocks: Generate inspector controls from attributes. (74102)
PHP-only blocks: Use HtmlRenderer to ensure fontend & editor consistency. (74261)
Refine overlay edit button UI: Move to link variant and add tooltip. (73957)
Render custom overlay template parts in Navigation block (behind experiment). (73967)
Update navigation-overlay-close block to be used as server side rendering. (74579)
Add Navigation Overlay close block (behind experiment). (73724)
Add create new overlay button to Navigation block. (73919)
Navigation Overlay: Fix area and icon name. (74520)
Real-time collaboration: Add type guard for rich-text attributes. (73946)
Real-time collaboration: Fix persisted document metaMetaMeta 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. and add tests. (73985)
Real-time collaboration: Improve type safety with YMapWrap. (73948)
Real-time collaboration: Use alternative diff in quill-delta, provide incremental text updates. (73699)
Real-time collaboration: Allow post-locked-modal to be overridden when collaborative-editing is enabled. (72326)
Create a reverse map for faster itemBlock lookups. (73930)
Site Editor
Add extensibleExtensibleThis is the ability to add additional functionality to the code. Plugins extend the WordPress core software. site editor experiment. (74123)
Extensible Site Editor: Design improvements and page rename. (73962)
Extensible Site Editor: Fix the dashboard link. (74231)
Extensible Site Editor: Lift template activation restriction. (74197)
Build: Rename extensible site editor page to avoid conflicts. (74221)
Extensible Site Editor: The Canvas should share the same ThemeProvider as all the surfaces. (74125)
Routing: Add title support to php generated pages. (73877)
Docs: Fix callout notices layout and clarify GitHubGitHubGitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the โpull requestโ where code changes done in branches by contributors can be reviewed and discussed before being merged by the repository owner. https://github.com/ vs handbook links. (74252)
Enhance Block Bindings Documentation as per WP 6.9 updates: Customizing supported attributes an getFieldsList. (73763)
Fix documentation title for wordpress/build package. (74541)
Fix formatting in block bindings documentation: Corrected links to core sources by adding hyphens. (74414)
Fix invalidinvalidA resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid. theme.json color value in Global Styles documentation. (73999)
Fix typo in Tutorial: Build your first block. (74050)
Update the copyright licensecopyright licenseCopyright holders may grant a license with various allowances including the ability to modify or distribute the copyrighted material. Also see GPL. to 2026. (74306)
Update the useCommandLoader example to fix the syntax error and add missing imports. (73660)
Validated form controls: Add stories for validation in popovers. (71282)
Code Quality
wordpress/theme: Update color ramp generation snapshots. (74281)
Fix: Use WP_Theme_JSON_Gutenberg instead of WP_Theme_JSON class. (74294)
Theme: Enable color ramp tests and update snapshots. (74403)
TypeScript: Convert notices package to TypeScript. (67670)
TypeScript: Migrate packages/jest-puppeteer-axe package to TypeScript. (70523)
TypeScript: Migrate shortcodeShortcodeA shortcode is a placeholder used within a WordPress post, page, or widget to insert a form or function generated by a plugin in a specific location on your site. package to TS. (74522)
Block support: BackportbackportA port is when code from one branch (or trunk) is merged into another branch or trunk. Some changes in WordPress point releases are the result of backporting code from trunk to the release branch. anchor support changes in core. (74341)
Plugin
Bump minimum required WordPress version to 6.8. (74218)
Template Activation: Try fixing still flaky test. (74216)
Test: Update URLs in tests to use example.org/com instead of test.com. (74246)
Tests: Add unit tests for Button block __experimentalLabel functionality. (74186)
Theme: Ensure build artifacts are synced in version controlversion controlA version control system keeps track of the source code and revisions to the source code. WordPress uses Subversion (SVN) for version control, with Git mirrors for most repositories.. (73894)
end-to-end tests: Restore removal of settings path in preload tests. (74375)
wordpress/theme: Disable color ramp unit tests. (74347)
Template Activation: Make template edit test less flaky again. (74066)
Template Activation: Make template edit test less flaky. (73975)
Data Layer
Cleanup the dependencies in the root package.json. (74212)
Update package version after an unfinished publish. (74413)
npm Packages
Packages: Add support for publishing stable release of pre-release package. (74332)
Packages: Avoid bumping the major version on prerelease packages. (74285)
You must be logged in to post a comment.