August 5, 2026 — Gutenberg 23.7 shipped August 5 with none of 23.6’s graduations and all of its follow-through: the Gallery block’s dynamic mode got a clearer, less destructive Detach control, Global Styles inheritance became visible inside the block inspector, and a new setting lets platform teams hide responsive editing entirely. Where 23.6 handed publishers new capabilities — stabilized Tabs and Playlist, inline notes, the mandatory iframe — 23.7 hands them the switches to govern those capabilities and irons out the edges. It’s a maintenance release with a point of view: after a run of feature graduations, the platform paused to give large publishers control.
Key Themes
- The Gallery block’s dynamic mode renamed its ambiguous “Convert to images” button to “Detach,” added an explanatory modal, and made the conversion a single undo step, closing a footgun in photo-desk templates.
- Global Styles inheritance is now visible in the block inspector, so a designer can see whether a value comes from the global stylesheet or a local override before changing it.
- A new
responsiveEditingEnabledsetting lets a platform team hide responsive editing from the editor entirely, extending the governance-switch pattern that started with per-post-type co-editing controls. - Notes gained inline format registration and sidebar selection sync, and the post-lock modal was fixed for locked-out viewers, continuing the editorial-review buildout from 23.6.
- React 19 compatibility testing and a Jest 30 upgrade advanced the toolchain work that has been running quietly under the feature releases.
Jump to: 🎨 Style Inheritance Goes Visible · 🖼️ The Gallery Detach Button · 🛡️ Switches for the Platform Team · 📝 Notes and Locks Tighten Up · 🧱 Editor Stability and Writing Flow · 🔧 Smaller Updates · 💡 Takeaways
🎨 Style Inheritance Goes Visible
Block inspector controls now reflect inherited Global Styles values (#77894): when a block’s setting comes from the global stylesheet rather than a local override, the inspector shows the inherited value instead of an empty field. The larger Global Styles inheritance UI that surfaces this behavior is now opt-in, enabled from the Gutenberg Experiments settings page (#80815) rather than on by default. 23.6 had already started reflecting inherited values in the responsive-styles inspector (#80481); this release generalizes that display and puts the broader treatment behind an explicit toggle.
Why this matters: The single hardest question in a governed design system is “where does this value come from?” When a border radius or an accent color shows up on a block, an editor can’t tell from the inspector whether it’s the theme’s global default or something a previous author set by hand — and that ambiguity is how style drift starts. Making inheritance visible turns the inspector into a debugging surface: a design lead can see that a value is inherited, leave it alone, and know a global change will flow through. It’s still gated behind an experiment, so this is scaffolding, not a shipping guarantee — but it’s the right scaffolding. For a publisher governing dozens of templates, “is this local or global?” is the question that decides whether a fix is safe.
🖼️ The Gallery Detach Button
The dynamic Gallery mode — the variation added in 23.6 (#78796) that auto-displays all media attached to a post — got a UX cleanup that matters more than its size suggests. The toolbar button that converted a dynamic gallery to a fixed set of image blocks was labeled “Convert to images,” which read like an export action. It’s now “Detach,” with a modal that explains what detaching actually does, and the conversion collapsed to a single undo level (#80665) so one Ctrl+Z reverses it instead of unwinding block by block.
Why this matters: 23.6 shipped the dynamic Gallery for photo-desk templates where the image set changes per story; 23.7 makes its escape hatch safe. “Convert to images” on a template-driven gallery is a destructive, easy-to-misclick action — it severs the link to the post’s media and freezes whatever was showing at that moment. Renaming it to “Detach,” explaining it in a modal, and making it a single undo step is the difference between a footgun and a deliberate choice. For a newsroom running dynamic galleries across hundreds of stories, that’s exactly the kind of guardrail that keeps a template feature usable by non-developers.
🛡️ Switches for the Platform Team
Two changes in 23.7 are less features than governance levers. A new responsiveEditingEnabled setting (#80814) lets responsive editing be hidden from the editor entirely, so the per-viewport controls don’t appear in every block’s inspector. And the Global Styles inheritance UI moving to an explicit Experiments opt-in (#80815) is the same instinct applied to a newer capability: ship it off, let teams turn it on.
Why this matters: 23.5 introduced the per-post-type kill switch that let compliance-minded publishers turn co-editing off where it doesn’t belong. The pattern is becoming a design principle — features ship enabled, but platform teams can remove them from the surface writers see. For a large publisher standardizing the editor across hundreds of authors, that’s the control that was missing. If a newsroom’s responsive behavior is fully owned by the theme, a responsive-editing control in every block’s inspector is noise that invites off-spec overrides; responsiveEditingEnabled lets a platform team take it away. The strategic read: Gutenberg is starting to treat “which capabilities should this author even see?” as a first-class question, which is precisely the question a governed editorial platform has to answer.
📝 Notes and Locks Tighten Up
- Inline notes now register as a proper rich-text format (#80576), and selecting a note in the sidebar syncs to its anchored text in the canvas (#80610).
- The post-lock modal was fixed for locked-out viewers (#79997), so someone who opens a post another user is editing gets the correct dialog instead of a broken state.
Why this matters: 23.6 gave notes their headline: text anchoring and @mention routing that turned block comments into a real review layer. 23.7 does the unglamorous wiring that makes that layer usable every day — clicking a note in the sidebar to jump to its spot in the article, and a lock dialog that behaves when two editors collide. None of it is a marquee feature. All of it is the gap between a collaboration demo and a copy desk that actually stays in the editor.
🧱 Editor Stability and Writing Flow
- Floated blocks no longer overlap sticky blocks (#80749), the Pullquote block honors custom line height in the editor (#80586), and device preview heights were restored for mobile and tablet views (#80271).
- Pasting files no longer crashes the paste handler (#81010), Shift+arrow extends a block selection without triggering native browser selection (#80687), and the page stops scrolling when the caret moves inside a tall block (#80708).
- The Math block defers LaTeX parse errors until the field first loses focus, using ValidatedTextareaControl (#80500), instead of flashing an error on every keystroke.
Why this matters: These are the papercuts a writer hits hundreds of times a shift. A paste-handler crash on a dragged-in file, a caret that yanks the page as it moves through a long article, an error that strobes while you’re still typing a formula — each is a small tax on trust in the editor, and each is the kind of thing that sends a reluctant newsroom back to a word processor. Fixing them doesn’t make a changelog headline. It makes the editor a place people stop fighting.
🔧 Smaller Updates
Performance got quieter and faster. Rich text reads the contentEditable attribute in ownsSelection to avoid a forced layout (#80549), a typing-performance regression was addressed (#80507), and FlatTermSelector stopped re-fetching terms unnecessarily (#80623) — a win for posts with large category and tag lists.
The React 19 migration kept advancing in the test suite. Jest was updated to v30 (#80767) and a React 19 compatibility test was added for the boolean inert attribute (#80397) — the same migration flagged in the 23.3 recap and the July developer roundup, still moving one test at a time toward the version bump.
Components picked up small capabilities. Combobox, Select, and SelectControl gained Group and GroupLabel subcomponents (#80574), DataViewsPicker added Shift+Click range selection (#80413), and GradientPicker now selects by slug to preserve a preset’s identity (#80554).
Block-library bug fixes cleared a backlog. Non-lowercase VIDEO tags are accounted for in render_block_core_video() (#80537), Cover and Accordion exit on Enter (#77301), the List block preserves its ordered type on indent (#75353), Navigation’s ‘Add block’ option was fixed inside template parts (#78427), the Social Link Tumblr icon markup was corrected (#80257), and a loading state is now shown while an image is cropping (#80460).
A security hardening landed in the Dashboard experiment. Dashboard Widgets action href values are now sanitized (#80510). The release credits 60+ contributors, 3 of them first-timers. As with recent releases, confirm production is on a supported WordPress version before updating.
💡 Takeaways
- Pilot the Global Styles inheritance UI on a staging site. Turn on the experiment and check whether the inspector’s inherited-value display gives your design leads the “where does this come from?” answer before you rely on it for governance.
- Retest your dynamic-Gallery templates. Confirm the renamed Detach control, its modal, and the single-undo behavior match how your photo desk expects the escape hatch to work.
- Decide which editor controls your authors should see. Evaluate
responsiveEditingEnabledand experiment gating as levers for standardizing the editor across a large author base instead of leaving every control on by default. - Run inline notes through another review cycle. The sidebar-sync and post-lock fixes move notes closer to daily use — pressure-test them with your copy desk before you commit the review pass to the editor.
- Keep watching the React 19 migration. Jest 30 and the
inert-attribute compatibility test are steps toward the version bump that will eventually force a plugin-compatibility audit.
The full changelog is available on Make WordPress Core.
