I have sat through a lot of releases called major over 14 years, and the WordPress 7.0 updates in the latest Dev Chat agenda are a different sort. New blocks are the easy part. Changing how the database copes with two people editing the same post at once, which is what Real-Time Collaboration means, is not. In the meantime the road to a stable release is getting crowded with betas.
The beta rush and the silent release
Beta 3 landed, then a silent Beta 4 went out alongside 6.9.3. A silent release usually means a last minute patch that could not wait for the formal cycle, which is why developers tend to look twice at one. Beta 5 is due this Thursday, March 12. If you keep a staging site, break it now, before the release candidates start arriving.
The weight of this release sits in Phase 3 of the Gutenberg roadmap, and it is not a UI story. Real-Time Collaboration needs proper handling of race conditions, which a PHP-heavy stack has rarely had to deal with. My earlier notes on the WordPress 7.0 Interactivity API cover the other half of it, where state management gets considerably more involved.
Filters for the Breadcrumb block
The most immediately useful change in 7.0 is a set of dedicated filters for the Breadcrumb block. Until now, changing breadcrumb markup or logic meant a template override or filtering the output in JS after the fact. The new filters run server side, so custom logic goes straight into the render loop.
<?php
/**
* Example: Customizing the Breadcrumb Block in WP 7.0
* Using the new bbioon_ prefix for safety.
*/
add_filter( 'render_block_core/breadcrumb', function( $block_content, $block ) {
// Specifically check for our custom attribute
if ( isset( $block['attrs']['bbioonCustomStyle'] ) ) {
$block_content = str_replace( 'wp-block-breadcrumb', 'wp-block-breadcrumb is-custom', $block_content );
}
return $block_content;
}, 10, 2 );
?>
I walked through the implementation in my guide on customizing breadcrumb block filters. It is a small change, and a real one if you care about the HTML your theme puts out.
Pseudo-elements in theme.json
theme.json now takes pseudo-elements, ::before and ::after, directly. That means fewer !important declarations scattered through a stylesheet purely to beat block level defaults. The config file lines up with the CSS spec more closely, and the editor gets closer to something you can genuinely design in.
If WordPress 7.0 work is eating your dev hours, I take it on as client work. I have been doing WordPress since the 4.x days.
What to test now
WordPress 7.0 is ambitious. Between the Interactivity API refinements and the DataViews experiment, this is the biggest architectural shift since the REST API merge. Do not wait for the general release to find out a custom plugin fights with the RTC engine. Read the official Interactivity API docs and start testing your state hooks now.