Summary, Dev Chat, December 10, 2025

Startย of the meeting inย SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/., facilitated by @benjamin_zekavica ๐Ÿ”— Agenda post.

Announcements ๐Ÿ“ข

WordPress 6.9ย is now available!

WordPress 6.9ย is now available for download. Huge thanks to all contributors who made this release possible.ย 

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/ย 22.2 has been released!

Gutenberg 22.2ย has been released and isย available for download!

Discussions ๐Ÿ’ฌ

6.9.1 Planning

A review of the tickets reported since the 6.9 release does not indicate a need for an immediate 6.9.1 maintenance release. The feedback so far does not point to issues that require a rapid response. A timeframe early in the new year is being considered to allow enough time for further testing and coordination. @jorbin will prepare a post for the CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. blogblog (versus network, site) to share the current status.

Missing โ€œNeeds Patchpatch A special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing. / Needs PRโ€ Label in the Gutenberg Repository

@sirlouen raised that it is often unclear when a Gutenberg issue is ready for patch work. Some issues may appear complete, even though they still require review or testing. The current labels do not always show this distinction, which can make it harder to identify issues that are ready to work on. It was also noted that clearer information about the issue workflow could help improve orientation.

#6-9, #core, #dev-chat

Adjacent Post Navigation Changes in WordPress 6.9 and Compatibility Issues

TL;DR

WordPress 6.9 introduced a fix for adjacent post navigation when posts have identical publication dates. While this resolved a long-standing 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., it inadvertently caused infinite loops in some extensions that modify the get_adjacent_post() WHERE clause.

What Changed in WordPress 6.9

In WordPress 6.9 (Trac #8107), a bug fix landed where next/previous post navigation failed when multiple posts shared identical post_date values. This commonly occurred when bulk-publishing draft posts.

The Technical Change

The get_adjacent_post() functionโ€™s WHERE clause was modified to include ID-based comparison as a tiebreaker:

Before (WordPress 6.8 and earlier):

WHERE p.post_date > '2024-01-01 12:00:00' 
  AND p.post_type = 'post'

After (WordPress 6.9):

WHERE (
    p.post_date > '2024-01-01 12:00:00' 
    OR (
      p.post_date = '2024-01-01 12:00:00' 
      AND p.ID > 123
    )
  ) 
  AND p.post_type = 'post'

This ensures deterministic ordering when posts have identical dates, using the post ID as a secondary sort criterion.

Additionally, the ORDER BY clause was updated:

-- Before
ORDER BY p.post_date DESC 
LIMIT 1

-- After  
ORDER BY p.post_date DESC, 
         p.ID DESC 
LIMIT 1

The Problem: Infinite Loops in Some Themes/Plugins

As Trac ticket #64390 documents, some plugins and themes modify adjacent post navigation to change behavior. For example, WooCommerceโ€™s Storefront theme navigates between products instead of regular posts. These plugins use the get_{$adjacent}_post_where 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. to replace the current postโ€™s date with a different postโ€™s date.

Hereโ€™s what was happening:

  1. 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 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. into get_previous_post_where filter.
  2. Plugin does string replacement: replaces $current_post->post_date with $target_product->post_date.
  3. Problem: The new WHERE clause structure includes the post date in TWO places (date comparison AND ID comparison).
  4. Simple string replacement modified the date comparison but left the ID comparison unchanged.
  5. Query returns the same post repeatedly โ†’ infinite loopLoop The 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..

Real-World Example: Storefront Theme

The fix to the WooCommerce Storefront theme illustrates this issue. They had to add special handling for the ID comparison:

// Replace the post date (works as before)
$where = str_replace( $post->post_date, $new->post_date, $where );

// NEW: Also need to replace the ID comparison (WordPress 6.9+)
if ( strpos( $where, 'AND p.ID ' ) !== false ) {
    $search = sprintf( 'AND p.ID %s ', $this->previous ? '<' : '>' );
    $target = $search . $post->ID;
    $replace = $search . $new->ID;
    $where = str_replace( $target, $replace, $where );
}

For Plugin Developers: Detecting and Fixing the Issue

How to Detect If Your Plugin Is Affected

Your plugin is likely affected if it:

  1. Uses the get_{$adjacent}_post_where filter.
  2. Performs string replacement on post dates in the WHERE clause.
  3. Changes which post is considered โ€œadjacentโ€ (like navigating between custom post types instead).

To test if your plugin works correctly with WordPress 6.9:

  1. Create 3-4 posts with identical publication dates (bulk publish drafts).
  2. Navigate between them using your pluginโ€™s adjacent post functionality.
  3. Verify that navigation moves to different posts (not the same post repeatedly).
  4. Check for infinite loops or performance issues.

Quick Fix: Handle the ID Comparison

If youโ€™re doing date replacement in the WHERE clause, you also need to handle the ID comparison. There are numerous ways to tie a knot, but the following example is loosely inspired by Storefrontโ€™s recent fix.

add_filter( 'get_next_post_where', 'example_custom_adjacent_post_where', 10, 5 );
add_filter( 'get_previous_post_where', 'example_custom_adjacent_post_where', 10, 5 );

function example_custom_adjacent_post_where( $where, $in_same_term, $excluded_terms, $taxonomy, $post ) {

    // IMPORTANT: Replace this with your logic to find the desired adjacent post.
    $adjacent_post = example_find_adjacent_post_function( $post );
	
    if ( $adjacent_post instanceof WP_Post ) {
        // Replace the date comparison.
        $where = str_replace( $post->post_date, $adjacent_post->post_date, $where );

        // Replace the post ID in the comparison.
        $where = preg_replace(
            "/AND p\.ID (<|>) {$post->ID}\)/",
            "AND p.ID $1 {$adjacent_post->ID})",
            $where
        );
    }

    return $where;
}

You could also add a version_compare( $wp_version, '6.9', '>=' ) test if youโ€™d like to support multiple versions.

Important: donโ€™t forget to first test any code on your site, and customize it according to your needs.

Next time

At the time, this was not a known breaking change, and was classed as a bug fix.

However as @jmdodd points out in the ticket, changes to WP_Query, especially SQL changes should be, by default, communicated more widely. Going forward:

  1. Reach out to known plugins using the get_{$adjacent}_post_where filter.
  2. Include a migrationMigration Moving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. guidance in the 6.9 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. (as applicable).
  3. Test against any known, popular plugins that modify adjacent post queries.

Whatโ€™s Next and Getting Help

Discussions have started on the ticket about ways to make this more robust in future WordPress versions. If youโ€™re experiencing issues related to this change:

  1. Check Trac ticket #64390 for the latest updates.
  2. Ask questions in the #core channel on WordPress SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/..
  3. Review the original fix PR #10394.

Thank you for your patience and understanding. If you maintain a plugin affected by this change, please update it using the guidance above, and donโ€™t hesitate to reach out if you need assistance.

Thanks to @westonruter @isabel_brison @andrewserong @jmdodd for helping to prepare this post.

#6-9, #dev-notes

Dev Chat Agenda โ€“ December 10, 2025

The next WordPress Developers Chat will take place on Wednesday, December 10, 2025, at 15:00 UTC in theย coreย channel onย Make WordPress Slack.

The live meeting will focus on the discussion for upcoming releases, and have an open floor section.

The various curated agenda sections below refer to additional items. If you haveย ticketticket Created for both bug reports and feature development on the bug tracker.ย requests for help, please continue to post details in the comments section at the end of this agenda or bring them up during the dev chat.

Announcements ๐Ÿ“ข

WordPress 6.9ย is now available!

WordPress 6.9ย is now available for download. Huge thanks to all contributors who made this release possible.ย 

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/ย 22.2 has been released!

Gutenberg 22.2ย has been released and isย available for download!

Discussions ๐Ÿ’ฌ

The discussion section of the agenda is for discussing important topics affecting the upcoming release or larger initiatives that impact the CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Team. To nominate a topic for discussion, please leave a comment on this agenda with a summary of the topic, any relevant links that will help people get context for the discussion, and what kind of feedback you are looking for from others participating in the discussion.

6.9.1 Planning

@jorbin notes that planning for 6.9.1 should begin. Discussion is needed to determine whether a maintenance release is required imminently based on the current tickets or if targeting a date after the first of the year is more appropriate.

Missing โ€œNeeds Patchpatch A special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing. / Needs PRโ€ label

@sirlouen notes that the Gutenberg repo does not have a clear label to show when an issue is ready for a patch or PR. Some issues like https://github.com/WordPress/gutenberg/issues/73832 are fully triaged but still unclear if they need development or more testing. A simple label would help developers see which issues they can work on.

Open floor ย ๐ŸŽ™๏ธ

Any topic can be raised for discussion in the comments, as well as requests for assistance on tickets. Tickets in the milestone for the next major or maintenance release will be prioritized.

Please include details of tickets / PRs and the links in the comments, and indicate whether you intend to be available during the meeting for discussion or will be async.

#6-9, #agenda, #core, #dev-chat

Summary, Dev Chat, December 3, 2025

Startย of the meeting inย SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/., facilitated by @benjamin_zekavica ๐Ÿ”— Agenda post.

Announcements ๐Ÿ“ข

WordPress 6.9ย is now available!

WordPress 6.9ย is now available for download. Huge thanks to all contributors who made this release possible.ย 

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/ย 22.2 has been released!

Gutenberg 22.2ย has been released and isย available for download!

Discussions ๐Ÿ’ฌ

Clarify wording for the Version field in TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress.

@SirLouen pointed out that the Handbook currently says the Version field shows when a 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. was โ€œdiscovered.โ€ @joedolson noted this can be confusing, and most agreed it should show the version where the bug was introduced.

@jorbin has updated the Handbook, and everyone is welcome to update any other places in the Handbook where the old wording still appears.

#6-9, #core, #dev-chat

Dev Chat Agenda โ€“ December 3, 2025

The next WordPress Developers Chat will take place on Wednesday, December 3, 2025, at 15:00 UTC in theย coreย channel onย Make WordPress Slack.

The live meeting will focus on the discussion for upcoming releases, and have an open floor section.

The various curated agenda sections below refer to additional items. If you haveย ticketticket Created for both bug reports and feature development on the bug tracker.ย requests for help, please continue to post details in the comments section at the end of this agenda or bring them up during the dev chat.

Announcements ๐Ÿ“ข

WordPress 6.9ย is now available!

WordPress 6.9 is now available for download. Huge thanks to all contributors who made this release possible. ๐ŸŽ‰

Discussions ๐Ÿ’ฌ

The discussion section of the agenda is for discussing important topics affecting the upcoming release or larger initiatives that impact the CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Team. To nominate a topic for discussion, please leave a comment on this agenda with a summary of the topic, any relevant links that will help people get context for the discussion, and what kind of feedback you are looking for from others participating in the discussion.

Clarify wording for the Version field in TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress.

@SirLouen suggests updating the Handbook wording. The current description says the Version field reflects the version where a 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. was โ€œdiscoveredโ€, which may be misleading. Proposed change: use โ€œintroducedโ€ for improved clarity. See Reference.

Open floor ย ๐ŸŽ™๏ธ

Any topic can be raised for discussion in the comments, as well as requests for assistance on tickets. Tickets in the milestone for the next major or maintenance release will be prioritized.

Please include details of tickets / PRs and the links in the comments, and indicate whether you intend to be available during the meeting for discussion or will be async.

#6-9, #agenda, #core, #dev-chat

WordPress 6.9 Release Candidate 4

The forth Release Candidaterelease candidate One 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). (โ€œRC4โ€) for WordPress 6.9 is ready for download and testing!

This version of the WordPress software is under development. Please do not install, run, or test this version of WordPress on production or mission-critical websites. Instead, itโ€™s recommended that you evaluate RC4 on a test server and site.

Reaching this phase of the release cycle is an important milestone. While release candidates are considered ready for release, testing remains crucial to ensure that everything in WordPress 6.9 is the best it can be.

You can test WordPress 6.9 RC4 in four ways:

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-partyInstall and activate the WordPress Beta Tester plugin on a WordPress install. (Select the โ€œBleeding edgebleeding edge The latest revision of the software, generally in development and often unstable. Also known as trunk.โ€ channel and โ€œBetaBeta A 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 candidate One 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). Onlyโ€ stream).
Direct DownloadDownload the RC4 version (zip) and install it on a WordPress website.
Command LineUse the following WP-CLI command:ย 
wp core update --version=6.9-RC4
WordPress PlaygroundUse the 6.9 RC4 WordPress Playground instance to test the software directly in your browser without the need for a separate site or setup.

The scheduled final release date for WordPress 6.9 is December 2, 2025. The full release schedule can be found here. Your help testing RC versions is vital to making this release as stable and powerful as possible. Please continue checking the Make WordPress Core blog for 6.9-related posts in the coming weeks for more information.

Whatโ€™s in WordPress 6.9 RC4?

Get a recap of WordPress 6.9โ€™s highlighted features in the Beta 1 announcement. Take a look at theย WordPress 6.9 Field Guide. For more technical information related to issues addressed since RC3, you can browse the following links:

The following updates have been addressed since RC3:

  • #64305: Hidden async-upload field marked as required causes publishing to fail in the editor.
  • #64315: Running _wp_cron() during shutdown breaks sites using ALTERNATE_WP_CRON.
  • #64269: โ€œRemoveโ€ button in Media Library gallery has a UIUI User interface styling issue.
  • #41604: 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/. incorrectly returns success instead of an error when updating a non-existent setting.
  • Ability to Hide blocks

How you can contribute

WordPress is open sourceOpen Source Open Source denotes software for which the original source code is made freely available and may be redistributed and modified. Open Source **must be** delivered via a licensing model, see GPL. software made possible by a passionate community of people collaborating on and contributing to its development. The resources below outline various ways you can help the worldโ€™s most popular open source web platform, regardless of your technical expertise.

Get involved in testing

Testing for issues is crucial to the development of any software. Itโ€™s also a meaningful way for anyone to contribute.ย 

Your help testing the WordPress 6.9 RC4 version is key to ensuring that the final release is the best it can be. While testing the upgrade process is essential, trying out new features is equally important. This detailed guide will walk you through testing features in WordPress 6.9. For those new to testing, follow this general testing guide for more details on getting set up.

If you encounter an issue, please report it to the Alpha/Beta area of the support forums or directly to WordPress Trac if you are comfortable writing a reproducible 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. report.ย  You can also check your issue against a list of known bugs.ย 

Curious about testing releases in general?ย  Follow along with the testing initiatives in Make Core and join the #core-test channel on Making WordPress Slack.

Update your theme or plugin

For plugin and theme authors, your products play an integral role in extending the functionality and value of WordPress for all users.

Thanks for continuing to test your themes and plugins with the WordPress 6.9 beta releases. If you havenโ€™t yet, make sure to conclude your testing and update the โ€œTested up toโ€ version in your pluginโ€™s readme file to 6.9.

If you find compatibility issues, please post detailed information to the support forum.

Test on your hosting platforms

Web hosts provide vital infrastructure for supporting WordPress and its users. Testing on hosting systems helps inform the development process while ensuring that WordPress and hosting platforms are fully compatible, free of errors, optimized for the best possible user experience, and that updates roll out to customer sites without issue.

Want to test WordPress on your hosting system? Get started with configuring distributed hosting tests here.ย 

Help translate WordPress

Do you speak a language other than English? ยฟEspaรฑol? Franรงais? ะ ัƒััะบะธะน? ๆ—ฅๆœฌ่ชž? เคนเคฟเคจเฅเคฆเฅ€? เฆฌเฆพเฆ‚เฆฒเฆพ? เคฎเคฐเคพเค เฅ€? เฒ•เฒจเณเฒจเฒก?ย  You can help translate WordPress into more than 100 languages. This release milestone (RC2) also marks the hard string freeze point of the 6.9 release cycle.

An RC4 haiku

Petals gently pause,
Perfect in their final form โ€“
Waiting for release.

Props to @amykamala, @wildworks, @krupajnanda, @westonruter for proofreading and review.

#6-9, #development, #release

Ability to Hide Blocks in WordPress 6.9

WordPress 6.9 now includes a built-in feature to hide blocks, making it easy to tuck content away without deleting it. You can now hide blocks: select a 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., click the ellipsis, and choose โ€œHideโ€. Hidden blocks are visually removed from the editor, and fully omitted from the published markup. Scripts and styles for hidden blocks are also omitted from the rendered page by default (see WordPress 6.9 Frontend Performance Field Guide for more details).

To unhide a block, open the List View, identify hidden blocks via the โ€œHiddenโ€ icon next to them, open the ellipsis menu again, and choose โ€œShowโ€. You can also toggle Hide/Show from the keyboard: use Ctrl + Shift + H on Windows orย Linux, โŒ˜ + Shift + H on macOS.

How to disable the hide option

Because it is implemented as a standard Block 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. support flag, opting into or out of this capabilitycapability Aย capabilityย is permission to perform one or more types of task. Checking if a user has a capability is performed by the current_user_can function. Each user of a WordPress site might have some permissions but not others, depending on theirย role. For example, users who have the Author role usually have permission to edit their own posts (the โ€œedit_postsโ€ capability), but not permission to edit other usersโ€™ posts (the โ€œedit_others_postsโ€ capability). aligns with the rest of the block supports.

The support is enabled by default for every block type except for a short list of coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. blocks. To disable the support selectively, hook into the block_type_metadata() filter, adjust the metadata, and update the supports.visibility flag:

function disable_block_visibility_support( $metadata ) {
	// Disable visibility support for the core/group block.
	if ( isset( $metadata['name'] ) && 'core/group' === $metadata['name'] ) {
		$metadata['supports']['visibility'] = false;
	}
	return $metadata;
}
add_filter( 'block_type_metadata', 'disable_block_visibility_support' );

For additional implementation details and history, see Gutenberg PR #71203.


Props to @joen for co-authoring the note.
Props to @westonruter, @ramonopoly for review.

#6-9, #dev-notes, #dev-notes-6-9

Summary, Dev Chat, November 26, 2025

Startย of the meeting inย SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/., facilitated by @benjamin_zekavica ๐Ÿ”— Agenda post.

Announcements ๐Ÿ“ข

6.9ย Release Candidaterelease candidate One 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).ย 3 is now available!

WordPress 6.9 Release Candidate 3 is now available for download and testing.
Further information you can find here.

6.9 Release Day Timeline Shift

Please note that the release preparation timeline for WordPress 6.9 has been adjusted.
A revised schedule is now in place, aligned with theย State of the Wordย onย December 2.
A detailed overview of the updated timeline isย available here.

6.9ย 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.

For more detailed information, see the following WordPress 6.9 Dev Notes:

Forthcoming releases ๐Ÿš€

6.9 Timeline

WordPress 6.9ย is planned forย December 2, 2025.

Call for Testingย 

The Test Team invitesย testing and feedbackย on the following upcomingย 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 features:

Discussions ๐Ÿ’ฌ

Browser Support Policy โ€“ Clearer Front-end vs. Adminadmin (and super admin) Rules

Recent issues, including #64266 and #64015, highlighted that itโ€™s not always clear which browsers need to be supported in the WordPress Admin and which ones should be supported on the front end. As block themes and FSE generate more front-end output, clearer guidance would help set expectations.

@joedolson will draft a proposal on the CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. blogblog (versus network, site) to gather broader feedback, with support from @desrosj.

#6-9, #core, #dev-chat

6.9 Release Day Timeline Shift for State of the Word

Each and every WordPress release day is an acknowledgment of the collective efforts from every single contributor in the community that helped to make that release possible. The State of the WordState of the Word This is the annual report given by Matt Mullenweg, founder of WordPress at WordCamp US. It looks at what weโ€™ve done, what weโ€™re doing, and the future of WordPress. https://wordpress.tv/tag/state-of-the-word/. has historically also been festive in nature, calling out the broad accomplishments of the WordPress community over the course of the previous calendar year.

The 2025 State of the Word was planned around an idea: what better way to celebrate and honor the 6.9 release and the communityโ€™s accomplishments from 2025 than combining the two occasions? With that in mind, the event was moved to December 2.

While thatโ€™s exciting, thereโ€™s still another level: publishing the 6.9 release to the world during the event! This sets the stage for the ultimate celebration of the WordPress community to close out 2025.

Release Day Planning

Because the release process can take a few hours, getting the timing correct will take quite a bit more coordination than usual.

The event will begin at 20:00 UTC (12:00 PST) and the new targeted release time is 20:30 UTC (12:30 PST).

Keep in mind that things happen. While this is the ideal schedule, unforeseen problems can (and do) come up. The timeline has extra time built just in case something goes wrong within a specific step. This is meant as just a guide.

Pre Final Release

Because the goal is coordinating a specific release time, this checklist should be completed as far in advance as possible. For this release, as much of the list as possible should be completed just after the dry run.

Dry Run (-26 hours)

The dry run should occur 26 hours prior to the planned final release time. This allows a few hours to complete the necessary tasks before starting the 24 hour code freeze.

The list of tasks to perform for the dry run can be found in the Core Handbook.

Release Day

There are a few different checklists for release day: CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress., WordPress.org, Tell the World, and a post-release one.

Core Checklist

Here is the timeline for these tasks for the Core checklist:

TimingTaskAssignment
17:00 UTC (T-210m/3.5h)1. Triage report 40@ellatrix/@davidbaumwald
17:45 UTC (T-165m)2. Pin @committers to pause all committing.@akshayar/@amykamala
17:50 UTC (T-160m)3. Update the `about.php` page (if necessary)@ellatrix/@davidbaumwald
18:00 UTC (T-150m/2.5h)4. Verify `package.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.` is updated.@ellatrix/@davidbaumwald
18:05 UTC (T-145m)5. Verify `src/wp-adminadmin (and super admin)/includes/update-core.php`@ellatrix/@davidbaumwald
18:10 UTC (T-140m)6. No new default theme. Skip this step.NA
18:10 UTC (T-140m)7. Run unit tests.@ellatrix
18:20 UTC (T-130m)8. Run `npm run grunt prerelease`/check GitHubGitHub GitHub 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 be the repository owner. https://github.com/ Actions.@davidbaumwald(Just confirming from the Dry run)
18:20 UTC (T-130m)8a. Run security tests.@davidbaumwald
18:35 UTC(T-115m)9. Update version in src/wp-includes/version.php@ellatrix
18:40 UTC (T-110m)10. Tag the release from the 6.9 branchbranch A 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".@ellatrix/@davidbaumwald
18:45 UTC (T-105m)11. Create release packages via mc.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/@davidbaumwald
18:50 UTC (T-100m)12. Remind those in SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. that links should not be shared.@akshayar/@amykamala

WordPress.org Checklist

The following is the timeline for the WordPress.org checklist:

TimingTaskAssignment
18:55 UTC (T-95m)1. Check packages are showing at w.org/download/releases.@davidbaumwald
19:00 UTC (T-90m/1.5h)2. Unzip/untar packages/verify checksums.@davidbaumwald
19:05 UTC (T-85m)3. Test packages.All Party Attendees
19:35 UTC (T-55m)5. Bump versions in w.org files.@sergeybiryukov
19:40 UTC (T-50m)6. Update credits file (if necessary).@sergeybiryukov
19:45 UTC (T-45m)7. Build language packs.@sergeybiryukov
20:00 UTC (T-30m)State of the Word begins.NA
20:15 UTC (T-15m)Release contributors attending SoTW called on stage.NA
20:18 UTC (T-12m)Take the final screenshot of the downloads counter. (timing differs from the checklist to account for the time gap)@akshayar/@amykamala
20:20 UTC (T-10m)8. DeployDeploy Launching code from a local development environment to the production web server, so that it's available to visitors. to WordPress.org.@sergeybiryukov

Tell the World Checklist

The following is the timeline for the Tell the World checklist:

TimingTaskAssignment
20:25 UTC (T-5m)1. Publish the release video on WordPress.tv (if necessary)N/A
20:30 UTC (T+0m)2. Publish announcement on w.org/news and celebrate. ๐ŸŽ‰@akshayar/@amykamala
20:35 UTC (T+5m)3. Open an amplification request with Marketing.@akshayar/@amykamala
20:40 UTC (T+10m)4. Publish the HelpHub release page.@estelaris
20:45 UTC (T+15m)5. Update the WordPress Versions page.@estelaris
20:50 UTC (T+20m)6. Update the PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher Compatibility page (link 6.9 row/column headers to .@desrosj
20:55 UTC (T+25m)7. Update the PHPUnit compatibility page.@desrosj

Post Release

The post release checklist can be handled on a less strict timeline as the event continues.

Summary

While each version of WordPress is released by a collection of contributors working synchronously around the globe, this is the first time a release will be published during an event with a specific release time being targeted. Please ask questions early and often to ensure everything is accounted for and everyone is on the same page. A little planning now will help get this right so the community can have lots of fun doing it.

Itโ€™s a wonderful opportunity to celebrate all the hard work thatโ€™s gone into this release both in person and from afar. Letโ€™s lean on each other, be kind, chip in where we can when we need to, and get 6.9 across the finish line!

Props @davidbaumwald, @annezazu, @sergeybiryukov, @johnbillion for post and timeline review.

#6-9

Dev Chat Agenda โ€“ November 26, 2025

The next WordPress Developers Chat will take place on Wednesday, November 26, 2025, at 15:00 UTC in theย coreย channel onย Make WordPress Slack.

The live meeting will focus on the discussion for upcoming releases, and have an open floor section.

The various curated agenda sections below refer to additional items. If you haveย ticketticket Created for both bug reports and feature development on the bug tracker.ย requests for help, please continue to post details in the comments section at the end of this agenda or bring them up during the dev chat.

Announcements ๐Ÿ“ข

WordPress 6.9ย Release Candidaterelease candidate One 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). 3 is now available!

WordPress 6.9 Release Candidate 3 is now available for download and testing.
Further information you can find here.

6.9 Release Day Timeline Shift

Please note that the release preparation timeline for WordPress 6.9 has been adjusted.
A revised schedule is now in place, aligned with the State of the Word on December 2.
A detailed overview of the updated timeline is available here.

WordPress 6.9 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.

For more detailed information, see the following WordPress 6.9 Dev Notes:

Forthcoming releases ๐Ÿš€

WordPress 6.9 Timeline

WordPress 6.9ย is planned forย December 2, 2025.

Call for Testingย 

The Test Team invitesย testing and feedbackย on the following upcomingย 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 features:

Discussions ๐Ÿ’ฌ

The discussion section of the agenda is for discussing important topics affecting the upcoming release or larger initiatives that impact the CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Team. To nominate a topic for discussion, please leave a comment on this agenda with a summary of the topic, any relevant links that will help people get context for the discussion, and what kind of feedback you are looking for from others participating in the discussion.

Browser Support Policy โ€“ Core/Adminadmin (and super admin) vs. Frontend

@joedolson proposes clarifying the distinction between our browser support policies for Core/Admin and for front-end output. Several recent cases have shown that the current scope is not consistently understood, especially in the context of ongoing FSE development. The goal is to determine how far our official support is expected to extend in each area. (See #64266, #64015)

Open floor ย ๐ŸŽ™๏ธ

Any topic can be raised for discussion in the comments, as well as requests for assistance on tickets. Tickets in the milestone for the next major or maintenance release will be prioritized.

Please include details of tickets / PRs and the links in the comments, and indicate whether you intend to be available during the meeting for discussion or will be async.

#6-9, #agenda, #core, #dev-chat