Welcome to the Source of Truth for WordPress 7.1!

Before you dive headfirst into all the big and small changes and pick your favorites, make sure to read these preliminary thoughts about this post and how to use it. If you have any questions, leave a comment or email me at pauli@gutenbergtimes.com.

A huge “Thank you” to Anne McCarthy, Justin Tadlock, Isabel Brison, Adam Silverstein, Ramon Dodd, Andrew Serong, Hans-Gerd Gerhards, Marin Atanasov, Krupa Nanda, Isabel Brison, Aaron Robershaw, Ben Dwyer, Brent MacKinnon, Ashar Fuadi, and a lot more. It still takes a village. Also huge respect to the whole release squad on getting WordPress 7.1 over the finish line.

Estimated reading time

33–49 minutes

at

7,735 words

Table of Contents

Changelog

Any changes are cataloged here as the release goes on.

July 30, 2026 – First edition.

Important note/guidelines

Try not to just copy and paste what’s in this post since it’s going to be shared with plenty of folks. Use this as inspiration for your own stuff and to get the best info about this release. If you do copy and paste, just remember that others might do the same, and it could lead to some awkward moments with duplicate content floating around online.

Each item has been tagged using best guesses with different high-level labels so that you can more readily see at a glance who is likely to be most impacted.
Each item has a high-level description, visuals (if relevant), and key resources if you would like to learn more.

Overview

WordPress 7.1 rounds out the block editor’s styling controls and makes working with media noticeably smoother. Long-requested features let you style how blocks look across three screen sizes and in interactive states like hover and focus — all without writing custom CSS. The admin experience becomes more personal, too, following you with your own color scheme and toolbar across every screen.

Handling images gets a considerable upgrade, too. The new media editor modal brings free-form cropping, rotation, and metadata editing into one workflow, and client-side media processing makes uploads faster and more resilient, with broader format support and better-optimized files.

The new Playlist and Tabs blocks enrich the layout options available out of the box and make for more creative information presentation. In the same realm fall the expanded Icon API with custom icon collections, dynamic galleries, and background gradients for more blocks.

The unification of WP Admin and the block editors progresses as well: the editors now respect your admin color scheme, and the admin bar stays with you on every screen — including the editors and the front end. A new “On This Day” Widget connects you to your site’s history.

While real-time collaboration has been punted to a future WordPress version, the asynchronous collaboration in Notes took real steps forward with inline notes on partial text selections, @mentions, rich text formatting, and multiple notes per block.

Beyond the headliners, core blocks receive many quality-of-life improvements and bug fixes to make editing content in WordPress streamlined, consistent, and fast — and developers get an expanding set of APIs to build on.

Resources

This release consists of features from the Gutenberg plugin version 22.7 – 23.6. Here are the release posts of those plugin releases: 22.7 | 22.8 | 22.9 | 23.0 | 23.1 | 23.2 | 23.3 | 23.4 | 23.5 | 23.6 Later Gutenberg releases contain bug fixes, backported to WordPress 7.1. release branches.

Assets

In this Google Drive folder you can view all assets in this document.

Tags

To make this document easier to navigate based on specific audiences, the following tags are used liberally:

  • [end user]: end user focus.
  • [theme builder]: block or classic theme author.
  • [plugin author]: plugin author, whether block or otherwise.
  • [developer]: catch-all term for more technical folks.
  • [site admin]: this includes a “builder” type.
  • [enterprise]: specific items that would be of interest to or particularly impact enterprise-level folks
  • [all]: broad impact to every kind of WordPress user.

How can you use these? Use your browser’s Find capability and search for the string including the brackets. Then use the arrows to navigate through the post from one result to the next.

Short video on how to use the tags to navigate the post.

Priority Items for WordPress 7.1

WordPress 7.1 introduces significant enhancements to block-based design and editing. These priority features focus on responsive controls, interactive states, media management, and modernized Admin bar navigation.

Responsive styles for blocks [theme builders] [site admin][end user]

Probably the most requested improvement of the block editor: after years of pushing intrinsic design for fonts and spacing, WordPress 7.1 makes responsive design a built-in, first-class part of the editing experience. The feature builds on earlier steps in this direction — the ability to show or hide blocks by screen size and the Navigation block’s customizable mobile overlay — and extends the idea to styling itself.

The feature is available across all block editors for Posts, Pages, Templates, Patterns,template parts and Navigation. Responsive styling follows a desktop-first model, letting styles cascade to smaller screens until you customize them for specific devices.

Viewport-specific values are currently limited to block sidebar settings (like typography, spacing, and colors). The controls work in Global Styles (affecting all instances of a block) and on individual block instances, across all block editors — Posts, Pages, Templates, Patterns, template parts, and Navigation.

Any controls from the toolbar that can’t be set by viewport will be hidden when a viewport state is enabled. Among the most significant controls: viewport-level aspect ratio presets for Image, Featured Image, and Cover blocks, so each can be optimized per device (#78543). Alongside this work, the Layout controls moved from the Settings tab to the Styles tab, keeping all styling decisions together.

Follow the Call for Testing: Responsive Styling to learn how to invoke the feature and what to look out for, and find the technical details in the Dev Note: Responsive block styles and configurable viewports in WordPress 7.1.

You can find more technical details in the Dev Note: Responsive block styles and configurable viewports in WordPress 7.1

Viewport breakpoint customization

Themes can now define custom breakpoints in theme.json, so both responsive styling and per-viewport block visibility work from your design system’s breakpoints instead of WordPress’s defaults. For theme developers and designers, this provides fine-grained, device-agnostic control over responsive behavior. (79104).

JSON

"settings": {
		"viewport": {
			"mobile": "30rem",
			"tablet": "45rem"
		}
	}

Tracking: WordPress 7.1: Block visibility configurable breakpoints and theme.json integration (#75707)

Interactive states styling (hover, focus)

You can now style interactive pseudo-states (:hover:, :focus: or :active:) for two blocks: Button and Navigation Link. The styling can be applied globally and per-instance without writing any CSS. For example, Users can change a button’s color on hover directly in the editor. (76491)

The underlying mechanism allows for the styling of the current menu item in a navigation block via theme.json (75736).

JSON

"core/navigation-link": {
  "@current": {
    "color": { "text": "#ff0000" },
    "typography": { "fontWeight": "700" },
    ":hover": {
      "color": { "text": "#0000ff" }
    },
    ":focus": {
      "color": { "text": "#00aa00" }
    },
    ":active": {
      "color": { "text": "#ff6600" }
    }
  }
}

This makes interactive design accessible to non-coders and theme builders. It eliminates the need to add custom CSS snippets for common interactions. 

🚧 Dig into the Dev Note: Responsive block styles and configurable viewports in WordPress 7.1

Media editor modal and free-form image cropper [end user][site admin]

The new media editor modal replaces the inline cropping tool, accessed via the familiar Crop button, and brings together free-form and aspect-ratio cropping, flip, fine-grained rotation with snap guides, and metadata editing in one unified workflow. (78653, 78935, 78792)

This considerably improves the editing experience in WordPress Block editor. The goal was to eliminate the need for external tools for basic image editing. You can now exercise faster, more precise control over your images—fine-tuning framing, fixing orientation, or mirroring an image to better fit your layout in just a few clicks, all without breaking your editing flow.

For the Cover Block, this new media editor modal is hooked up to the Crop background image button. The option appears whenever the Cover block uses an editable image, and the block automatically recalculates its overlay color and contrast after an edit, so text stays readable even if the crop removes the image’s brightest or darkest areas (79258 )

Tracking: Media Editor Modal task tracking (#73771)

Client-side media processing improvements [developer][site admin][enterprise]

When you upload an image in the block editor, your browser — not your server — will now handle the creation of all sub-sized images using a WebAssembly (WASM) version of libvips (wasm-vips), a high-performance image processing library. The result stored on your server is improved over what server-side processing produced until today: smaller files generated directly on your device. Server-side image processing CPU usage could decline by more than 80% on capable devices (79188)

The update also comes with broader modern image format support that includes HEIC (the default format for iPhone photos), JPEGS with HDR gain maps (used by UltraHDR and Adaptive HDR), AVIF and WebP support built in. A great performance improvement is the GIF-to-video conversion feature for lighter, more efficient files that are faster to load on the front-end. This feature is opt-in right now. Uploads are also more resilient, with a progress indicator and automatic retries if your data connectivity drops off (76765, 79307).

For content creators uploading media, this update means better support for HDR images, faster, more reliable uploads, broader format support, and better-optimized files without manual intervention.

Plugin developers should note that some server-side hooks, including `wp_generate_attachment_metadata`, `image_resize_dimensions`, and `wp_handle_upload` may not fire as before. The team is working on documentation and mitigation strategies. (74333)

More in-depth information is available in the Dev Note Client-Side Media Processing in WordPress 7.1

Icons now inherit color, and the Icons API takes shape [theme builder][plugin author][developer][enterprise]

WordPress 7.0 shipped a built-in set of SVG icons for the block editor and the Icon block. With WordPress 7.1, this grows into a proper, public API: plugins and themes can register their own icons, group them into collections, render them on the server, and read them over the REST API.

For content creators, the most visible change is the Icon block’s picker: it now groups icons by collection, with a tab per collection plus an “All” tab, and your search query carries over as you switch tabs. Custom icons from plugins and themes appear right alongside the core set. The block itself picked up several refinements: it inserts a default icon so you’re never staring at an empty placeholder, offers flip and rotate controls in the toolbar, and shows text and background color controls by default.

For developers: Registering more collections

For developers, the pieces come together on the PHP side: register a collection with wp_register_icon_collection(), add icons with wp_register_icon() — from an inline SVG string or an .svg file — and print any registered icon with wp_get_icon(), including size, CSS class, and an accessible label. Icon names get strict validation, the registry’s register method is now public, and REST API endpoints expose collections and icons to your own code. A dev note with full code examples is on its way to the Make Core blog.

One breaking change to flag: all 330 icons in @wordpress/icons v15 now declare fill="currentColor", so icons inherit the surrounding text color by default. If you’ve been tinting icons with the CSS fill property, switch to color — it’s more reliable, since an icon may use fill, stroke, or both internally. If you register your own icons, add fill=”currentColor” to their <svg> element to get the same behavior.

The Dev Note Registering and rendering SVG icons in WordPress 7.1 holds all the details.

Tracking: SVG Icon API: Iteration for WordPress 7.1 (#75715)

Admin Bar everywhere  [all]

With WordPress 7.1, the WordPress admin bar which sits at the top of your site’s front end and other admin pages is now displayed when using block editor by default. It stays hidden when Fullscreen mode and Distraction-free mode are both turned on.

Until now, entering the editor in its default fullscreen mode meant the admin bar disappeared, cutting you off from the rest of wp-admin. Since the admin bar now provides site context, the update also replaces the top-left W/site icon in the site editor with an explicit back button, making the navigation control more obvious (79197).

With this update also comes a design refresh:

  • your site icon replaces the home icon,
  • the profile avatar becomes circular, and
  • the command palette keyboard shortcut moves into the Admin bar to remove visual clutter and resolve shortcut conflicts. (79060)

This keeps the familiar navigation with you on all screens again.

Dev Notes with all the details for users and developer can be found here: Consistent navigation in WordPress 7.1 with persistent toolbar.

New Blocks [all]

This release expands the block library with versatile new tools. These additions provide content creators with improved ways to display interactive media and organize information.

Playlist block

The new Playlist block lets you create audio playlists with waveform visualization, making it easy to showcase multiple tracks or podcast episodes in a single interactive player. Visitors can browse and play through your audio content without leaving the page. For content creators this provides a rich, modern listening experience built right into WordPress to highlight podcast episodes, track of music or talks.

Each track comes with its metadata: artwork, artist name, track number, and track length. The tracklist itself is configurable — you can set the play order and toggle artwork, artist names, track numbers, and track length individually to suit the design of your page.

The WaveformPlayer visualization comes with a visualization style selector. You can set waveform and waveform background colors for more granular theming and show the track artwork on the play button, accessible for all visitors. The Playlist and Playlist Track blocks are available in the default block library.

This is the first version and contributors are working on improvements for the next WordPress version, too looking to add more waveform styles, shuffle and skip buttons, a hover overlay for more intuitive track scrubbing, as well as performance improvements.

Tracking: Playlist Block: Iteration issue for 7.1 (#77421)

Tabs block

The new Tabs block organizes content into separate tabbed panels that visitors click through to navigate. It’s a design pattern that presents information compactly without overwhelming readers with a wall of text. It’s a common layout for FAQs, product features, or any content where you want to show options side-by-side. For editors, it’s a familiar, flexible layout pattern now available natively in WordPress.

The block family consists of a Tab List for the navigation and Tab Panels for the content. Each panel accepts any blocks you like, and the tab buttons come with their own color, typography, border, and spacing controls, so the navigation can be styled to match your theme. Using the toolbar buttons you can reorder the tabs quickly.

Under the hood, the markup and keyboard behavior follow the best practices set out in the tabs pattern from the W3C ARIA Authoring Practices Guide.

Tracking: Stabilize Tabs Blocks (#73230)

Improved Blocks and Block handling

Core blocks receive numerous quality-of-life improvements in 7.1. These updates refine existing editing workflows, simplify media handling, and provide deeper customization for layouts and design.

Block transforms: preview first, convert faster [end user][site admin]

Switching a block’s look or type is now much easier to evaluate before you commit. When you open the block switcher in the toolbar, the style options a theme provides — say, a Button’s “Outline” style — show live previews on hover, so you see exactly how your block will look with the style applied. (75889) The same previews in the inspector’s Styles panel now match the toolbar presentation, so it no longer matters where you make the switch. (75989) A small polish fix also centers the Navigation block’s preview in its preview pane. (75741)

Transforms got more capable, too: a block can now transform directly into a variation of another block. Instead of converting to a Group and then picking Row afterwards, the transform menu offers Row or Stack as direct targets — one step instead of two. (78713)

The same “one step instead of two” thinking extends to legacy content. Pasting or converting an shortcode now creates a proper Embed block instead of leaving raw shortcode text behind, so embeds from YouTube and other services display correctly right away (77937)— and if you change your mind, undo restores a paragraph with the URL rather than deleting it. (77551).

The Shortcode block joins in as well: when its content matches a registered shortcode, it now offers block-specific transforms to convert it into the equivalent block. (77944)

For anyone maintaining a site with years of shortcode-based posts, that removes a tedious cleanup step on the way to block-based editing.

Combine gradient and image backgrounds [end user] [theme builder][site admin]

More blocks now support background gradients through the new background.gradient block support, which layers a gradient on top of a background image instead of one overwriting the other — a translucent color wash over a photo, for instance, without custom CSS.

Previously, gradients lived only in the Color panel, stored as a CSS background shorthand that clashed with any image on the block. The new support adds a Gradient control to the Background panel next to the existing Image control, and the style engine combines both into a single layered background-image value on individual blocks, in Global Styles, and via theme.json. A follow-up allows modern color functions in standalone gradients, and the text and background color controls moved to the Typography and Background panels to match.

WordPress 7.1 ships with six blocks supporting the new gradients: Group, Verse, Accordion, Pullquote, Post Content, and Quote. More will follow, with a long-term plan to migrate the older color.gradient to the new system across all blocks. There’s no built-in migration path in 7.1 yet.

For extenders, opting in follows the familiar block supports pattern. Custom blocks declare it in their block.json:

JSON

"supports": {
	"background": {
		"gradient": true
	}
}

Themes control the setting via theme.json under settings.background.gradient (it’s also included in appearanceTools), and can define gradient values in styles — at the root, per block, or in style variations:

JSON

{
	"styles": {
		"background": {
			"gradient": "linear-gradient( 135deg, #000 0%, #fff 100% )"
		},
		"blocks": {
			"core/group": {
				"background": {
					"gradient": "var:preset|gradient|vivid-cyan-blue"
				}
			}
		}
	}
}

All the salient details in this Dev Note New Block Support in WordPress 7.1: Background Gradient (background.gradient)

Cover Block: control video embed providers [theme builder][plugin author][enterprise][developer]

Besides gaining the new media editor modal for background images, the Cover block addresses a request from community feedback. When the block’s “Embed video from URL” feature shipped in WordPress 7.0, site builders asked for a way to curate or disable it. WordPress 7.1 adds a new allowedVideoProviders attribute to restrict which video providers are offered, or to remove the URL-embed option entirely by allowing none (#80092). Existing embeds keep working; only new URL input in the editor is restricted.

The details are already reflected in the Cover block’s documentation.

Gallery and the attached images workflow in the Media Library [end user][site admin]

Images you upload while writing a post have always been “attached” to that post. This specifically true for older sites, pre-Block editor. Attached images where no accessible as an cluster and need to be added the block editor canvas one at a time. WordPress 7.1 finally puts that relationship to work in the editor, via an additional filter drop-down item Uploaded to this post in the Media Library Inserter modal. Photos and other media you’ve uploaded stay within reach for reuse instead of disappearing into the media library.

The Gallery block is the showcase: instead of hand-picking every image, a single Use attached images button populates a dynamic gallery from all media attached to the current post (#78796). For content creators, this makes assembling image galleries faster and more flexible. It also helps reorganize image on older posts. The Source panel provides options for sorting the images. This brings the block editor handling of Gallery’s up to par with some features of the















shortcode

To have entire freedom to control the Gallery block, the Detach feature comes in handy. A Detach button in the toolbar and in the sidebar’s Source panel, makes out a stand-alone Gallery without the dynamic connetion to the post’s image. Using it help user to edit/upate the gallery block.

Below video visualizes the connection between a list of image attached to a post from the Media Library and the gallery block with the new feature.

Tracking: WordPress 7.1: dynamic galleries and post-attached media iteration issue (#77117)

It’s a step back toward the simplicity of dropping photos into a post and having WordPress do the arranging. It’s the first visible piece of a larger effort around dynamic galleries and post-attached media, with dynamic queries by date and eventually categories or tags ahead.

Image Block: Mark as decorative toggle [end user][site admin]

Screen readers announce every image to their users — but some images, like dividers and design flourishes, carry no information worth announcing. The Image block’s new “Mark as decorative” checkbox tells assistive technologies to skip such an image entirely on the front end, by rendering it with role=”none” in the published post. It now eliminates the question, did we forget an alt=text or was it a deliberate decision to leave the alt-text empty?

There is further processing to come with the checked box. Marking an image decorative clears its alt text and disables captions and links, since an image that links somewhere or explains something isn’t decorative by definition. Until now, the accessible route was knowing the empty-alt-text convention; the checkbox makes the intent explicit, machine-readable, and available to every content creator. (78064)

Login/out Block Improvements [theme builder][site admin][developer]

The Login/Logout block has an option to display a full login form instead of a simple link — but until now, that form’s submit button ignored your theme entirely, rendering with plain browser-default styles that stuck out next to every other button on the site. With a block theme active, the submit button now carries the standard button classes (wp-block-button__link and wp-element-button), so it automatically picks up the button styling your theme defines in theme.json — colors, border radius, and all — with no custom CSS required. The block follows the same approach the Comments form already uses, resolving a mismatch first reported back in 2023. (76746)

Navigation Block and Link Creation [theme builder] [site admin][end user]

The Navigation block picks up several improvements that give site builders more freedom in what a menu can contain and where it can be edited. The Login/Logout block can now be nested inside submenus (#75497), handy for tucking account actions into a “My Account” dropdown instead of spending a top-level slot on them. New links can be created directly from the sidebar List View in the Site Editor (#75918), so building out a menu no longer requires clicking into each item on the canvas. And the Home Link block gains previously missing controls (#76672), bringing it up to par with its navigation siblings.

Search block Styling[theme builder] [site admin][end user]

A styling gap is closed in the release for the Search block: color settings now apply to the search input field even when the search button is disabled (77219), so your search boxes match your design system regardless of which display options you choose.

The block also embraces modern HTML: it can now render inside the native <search> landmark element, which carries search semantics for browsers and assistive technologies without the manual role=”search” attribute. Because dropping that attribute could break existing theme CSS, the feature is opt-in — per block via a new HTML element selector in the Advanced panel, or site-wide with add_theme_support( ‘search-element’ ) (#78485). Default output is unchanged, with a path to making the modern markup the default in a future release.(78485)

Query block [theme builder] [site admin][end user]

The Query block received an additional filter to control the list of blocks: You can now exclude the current post from a list of posts. This is useful when you want to add a list of posts with related posts. (64916).

General quality of life improvements.

Pattern editing experience improvements [theme builder] [site admin] [developer]

WordPress 7.0 shifted pattern editing to focus on content changes rather than exposing every tool, treating patterns more like single blocks. In 7.1, work focuses on UX refinements based on feedback, bug fixes, and general maintenance. For users inserting and customizing patterns, this means a more polished, predictable experience with fewer rough edges.

Tracking: WordPress 7.1: Pattern Editing Iteration (#75717)

  • Pattern Editing and Block Fields: Highlight selected block (74841)
  • Pattern editing: show root block identity when editing pattern sections #79417

 Block Width and Layout Controls [theme builder] [site admin] [developer]

Refines spacing and layout tools to be more intuitive. The Columns block no longer shows a confusing ‘Skip’ option in its layout picker, the Button block now uses the standard width control system, and spacing controls display in a more logical order when unlinked. These changes remove friction points that tripped up editors when building complex layouts.

  • Button: Migrate to width block support #74242
  • Columns: Remove redundant Skip option from layout picker #78405
  • Re-order spacing side controls when unlinked #66317

Link Control and Preview Enhancements [theme builder] [site admin] [developer]

When linking to pages or posts, the link picker now shows ‘Homepage’ instead of just ‘Page’ for your site’s front page, and uses the actual entity link title for previews. These small improvements make link creation feel smarter and help editors understand exactly what they’re linking to before publishing.

  • Use entity link title for link control preview #77155
  • Link Picker: Use Homepage badge instead of Page if Homepage #75929

Additional CSS Validation [theme builder] [site admin] [developer][end user]

Additional CSS is now validated both on mount and via a new dimension validation endpoint for sideloaded styles. These checks prevent malformed or insecure CSS from breaking your site’s appearance or introducing security risks, giving you more confidence when adding custom styles.

  • Validate additional CSS on mount #78682
  • Add dimension validation to sideload endpoint #74903

Block Editor Attribute Handling [theme builder][developer]

The block editor now correctly targets the right block when copying direct insert block attributes, fixing edge cases where attributes would apply to the wrong block. This fix ensures that copy-paste and duplication workflows behave as expected.

  • Block Editor: Fix target block for copying direct insert block attributes #77877
  • Block Editor: Allow overriding `disableContentOnlyForTemplateParts` setting #79191

Image handling improved [end user][site admin]

A set of small fixes makes working with images more predictable. If an image points to a media library item that has since been deleted, the editor no longer treats it as a local attachment, preventing confusing errors. The crop button only appears when cropping is actually available for your user role and image type, so you’re never offered a tool that can’t work.

And the featured image field now shows placeholder text making clear at a glance what goes there.

  • Image block: Validate attachment ID exists before treating image as local #77178
  • Image/Site Logo: hide crop toolbar when editMediaEntity is unavailable #76626
  • Set placeholder to featured image field #76342

Post Template Layout Improvements [theme builder][site admin]

Ensures the Post Template block’s fallback styles only apply when appropriate, preventing layout conflicts when custom minimum column widths are defined. This fix gives editors more predictable control over query loop layouts without unexpected style overrides.

  • Ensure Post Template fallback styles don’t apply when minimumColumnWidth is defined #77411

Post Title Block Enhancements[site admin][end user]

The Title block gains a placeholder attribute, letting you show helpful text when no title has been entered yet. This small addition improves the editing experience for custom post types and guides content creators to fill in required fields.

  • Post Title: Add placeholder attribute #7601 v22.7.0

Block Inserter Enhancements [site admin][end user]

Makes discovering and adding blocks easier with visual polish to the inserter interface. The search input now stays visible while scrolling through block options, and the inserter button animates to clearly signal when the panel is open. These small touches reduce friction when building pages and help editors stay oriented while exploring block options.

  • Block Inserter: Animate inserter button icon to signal open state. #78306
  • Make Block Inserter search input sticky while scrolling #77698

Editor enhancements

Beyond the block improvements, the editing experience itself picks up refinements across the board. Notes mature into a fuller commenting workflow. Visual revisions gain a more detailed timeline. And your site’s brand identity gets a dedicated home in the Site Editor.

Notes move toward a full commenting workflow [end user][site admin][developer][enterprise]

Notes, the inline editorial comments right in the editor, continue to mature, with several additions in this release that make asynchronous collaboration richer and easier to act on without leaving WordPress.

The headline feature: inline notes. You can now attach a note to a specific text selection rather than to a whole block. Select part of a paragraph, add a note, and the highlight stays anchored to that text as you keep editing around it. A single block can carry multiple inline notes, sorted by the order they appear, and none of the highlighting shows up in the published post. Also, blocks are no longer limited to a single conversation, either — you can start multiple note threads on the same block.

The conversations themselves got more expressive, too. Notes now support rich text formatting — bold, italic, links, and code. @mention autocomplete makes it quick to pull a colleague into a thread. Longer notes collapse behind a “Show more” toggle, and a “Resolved” divider in the sidebar separates finished discussions from open ones, so it’s easy to see what still needs attention.

Tracking: Notes iteration for WordPress 7.1 (#76316)

Dedicated Identity section [site admin][theme builder][end user]

A new Appearance > Editor > Identity screen consolidates your site’s logo, favicon, title, and tagline into one easy-to-find location, with inline editing so you can crop and adjust images right there. This eliminates hunting through Settings or digging into templates just to update foundational branding. For new site builders especially, it makes setting up your site’s identity quick and straightforward. Existing site owners have an intuitive place to update the data. (76264, 76116)

Visual revisions improvements [site admin][end user][theme builder]

Building on the visual revisions introduced in 7.0, the revisions screen gains a paginated timeline in the inspector with more detailed information about each revision, making it easier to understand what changed as you scrub through versions. (77333)

Changes made via autosave are now labeled in the revisions timeline and make the autosave notice work with the visual revisions UI.(79950, 79947)

Admin / Workflow updates

Updates to admin and workflow tools in 7.1 improve navigation, content management, and site administration. These changes are designed to reduce friction and help you work more efficiently within the WordPress dashboard.

Organized command palette [all]

The command palette, the quick-access menu you open with keyboard shortcuts, now groups results into recent, suggested, and matching sections, and remembers your recently-used commands across sessions. The visual design has also been refreshed to make scanning results easier. This helps you navigate WordPress faster by surfacing the tools you use most often right at the top. (75691)

Change a comment’s parent from the Edit Comment screen [end user][site admin][enterprise]

Ever needed to fix a comment that landed in the wrong thread? The Edit Comment screen now has an “In reply to” control in the Save box — hit Edit and you get a dropdown of the post’s other comments, listed by the author with a short excerpt. Top-level comments just show “None.”

You can’t create broken threads with it: the dropdown hides the comment itself and anything nested under it, and the server double-checks on save — the new parent has to be on the same post and can’t be the comment or one of its own replies (anything invalid gets bounced with a WP_Error). If the current parent wouldn’t normally show up in the list (a pingback, say), it’s kept in there as the selected option, so saving without touching the field changes nothing. Works without JavaScript too, and there are tests covering the validation. (65570)

See an excerpt of posts without titles [end user][site admin]

If you publish posts without titles for instance for quick status-style updates, the Posts list has been pretty useless for telling them apart: just a column of identical “(no title)” links.

Now, in Compact view, untitled posts show the first 15 words of the excerpt right after “(no title)”, so you can actually see what each post is at a glance.

The checkbox’s screen-reader label gets the same text, password-protected posts keep their content hidden, and the Extended view is unchanged since it already shows excerpts.(65022).

On This Day dashboard widget[end user][site admin]

The dashboard gains a new On This Day widget. It surfaces past content you published on the same date in previous years, similar to memory features on social platforms. It’s designed to motivate you by reminding you of what you’ve accomplished and encouraging you to write more. For content creators, it’s a pleasant nudge to reflect on your archive and stay engaged with your site. (65116)

Media Library: infinite scrolling is back on by default, with a per-user opt-out [end user][site admin]

The Media Library grid now uses infinite scrolling by default, so attachments load continuously as you scroll instead of behind a “Load more” button. For anyone who prefers the previous behavior, there’s a new personal option: a “Disable infinite scrolling in the Media Library grid view” checkbox on the profile screen. The setting only appears for users who can actually upload files, since others never see the attachment grid.

For developers, the existing media_library_infinite_scrolling filter still works and now takes top precedence: a hooked filter always wins, followed by the user’s profile preference, with infinite scrolling enabled when neither is set. Note the filter’s default value has flipped from false to true as of 7.1.0, so any code relying on the old default should be reviewed. The change ships with unit tests covering the new user option and the full precedence chain (65564).

Read the Dev note: Media Library infinite scrolling is now enabled by default, with a per-user opt-out

Developer Goodies [developer][theme builder][plugin author][enterprise]

WordPress 7.1 provides developers with expanded APIs, theme.json capabilities, and system improvements. These tools offer greater control over site design, block behavior, and system integrations.

Post editor iframe now always on

Other editors in WordPress—the site editor, the template editor, and block, template, and device previews—have been unconditionally iframed for a long time, going back to the template editor’s introduction in 5.8. The post editor was the holdout: starting in 7.0, whether it ran isolated depended on the blocks actually present in a given post, so a post using only Block API v3+ blocks got the isolated canvas, while a post containing even one older block (API v1 or v2) dropped out of it entirely. That meant the same site, even the same author, could see the editor behave differently from post to post. In 7.1, that condition is removed: every post editor is always iframed, regardless of theme type or block API version.

For most people writing and editing content, this is good news—no more switching behavior depending on which blocks happen to be inserted. Block developers have a bit of homework, though: the iframe has its own document and window, separate from the admin page where editor scripts run, so any code that reaches for the global document or window to touch the canvas will now be looking at the wrong place. The usual fix is to get the canvas’s document from an element inside it (via ownerDocument and its defaultView) rather than the global object, and to use useRefEffect for attaching and cleaning up canvas event listeners.

Read the dev note on the 7.1 changes (once public), the dev note on the 7.0 changes, and the block migration guide for more details.

Ryan Welcher published a guide and a demo plugin. The post editor is going full iframe: what block developers need to know before WordPress 7.1 with code examples and instructions how to fix things if necessary.

Global Styles and theme.json

Text Shadow support for theme.json

Theme authors can now define text shadows directly in theme.json via a new textShadow property under styles.typography. It works everywhere you’d expect: at the root level, per-block (say, a shadow on paragraphs only), via style variations, and on elements — including pseudo-selectors like a link’s :hover state. Any valid CSS text-shadow value is accepted, including stacked multi-shadow definitions. Block placeholder text in the editor resets the shadow so it stays readable regardless of what the theme sets.

JSON

"styles": {
		"typography": {
			"textShadow": "1px 1px 2px red, 0 0 1em blue, 0 0 0.2em blue;"
		},
		"blocks": {
			"core/paragraph": {
				"typography": {
					"textShadow": "1px 1px 2px red, 0 0 1em red, 0 0 0.2em red;"
				}
			}
		},
		"elements": {
			"link": {
				":hover": {
					"typography": {
						"textShadow": "none"

More details in the Dev Note: Text Shadow Support in Global Styles

Text-Align Block Support Migration

Eight more core blocks (Post Date, Post Excerpt, Post Navigation Link, Post Title, Query Title, Site Tagline, Site Title, Pullquote and Term Name) now use WordPress’s standardized text-align system. As part of a larger migration effort this update ensures consistent alignment controls across the editor and makes these blocks behave predictably alongside newer blocks.

WordPress EndUser are not supposed to see any changes and existing blocks continue to work. Theme designers are now able to style any of these blocks text align via theme.json property. The code example shows how to set the center as the site-wide TextAlign default. And `”textAlign”: false` disables the feature for this block

JSON

{
	"version": 3,
	"styles": {
		"blocks": {
			"core/pullquote": {
				"typography": {
					"textAlign": "center"
				}
			}
		}
	}
}

Block Visibility

Adds settings.blockVisibility.allowEditing to theme.json, allowing themes to disable the block visibility feature entirely.

JSON

{
  "settings": {
    "blockVisibility": {
      "allowEditing": false
    }
  }
}

When set to false, the toolbar button and block options menu item are hidden. In this regard, it makes this block support consistent with color, typography etc.

blockVisibility.allowEditing follows the layout flag. The reason is the two-fold nature of blockVisibility at the block supports level: a bool means don’t render the block at all, but viewport settings allow users to control visibility per viewport.

The object shape also leaves the door open to extending block visibility to triggers, not only blockVisibility.viewports but others like post type or whatever. (76559).

Block Supports: CSS variables by feature selector

Block Supports now generates CSS custom properties based on a block’s feature-specific selectors, not just its root selector. Some blocks—the Button block is the example given—define their outer wrapper and an inner styling target as different elements, and previously there was no way to output a preset variable (like a dimension size) onto that inner element specifically. Theme and plugin authors building design systems now have a way to target the right element per feature, without needing custom CSS to work around the mismatch.

A minimum-width option for block dimensions

Blocks already supported height, minHeight, and width. What was missing was a way to stop something from shrinking too far—so a layout element wouldn’t collapse into an unusable sliver on a narrow screen. Minimum-width closes that gap, mirroring how minimum-height already works.

It’s opt-in at the block level: the control stays hidden in the inspector until a block explicitly enables it, though it shows by default in the global styles panel. Theme-defined dimension presets carry over automatically, so existing spacing scales just work. The Group block is the first to adopt it.

You’ll find more details in the Dev Note New Block Support in WordPress 7.1: Minimum Width

Design System Theme Provider

The first version of the design system’s theme component arrives in WordPress 7.1. It consists of standardized CSS custom properties that follow the W3C Design Tokens specification. You probably won’t spot the difference right away — the default theme was deliberately built to match existing styles — but this is the machinery that will power the admin color scheme in the Site Editor. You can read more details on the future direction in the Merge Proposal: Design System Theming

Admin color schemes in Site Editor

The Site Editor’s sidebar and interface now respect your chosen WordPress admin color scheme instead of always showing a dark background. This brings visual consistency across the post editor, Site Editor, and admin dashboard. If you’ve personalized WordPress with a color scheme you prefer, that choice now carries through everywhere you work. 78397

Mix static HTML with editable blocks

A new innerContent block support lets a block keep static HTML fragments interleaved with editable inner blocks as the canonical source of its own markup. In practice, this means a hand-written HTML structure can have just a piece of it—a paragraph, an image—editable in place, while the rest stays fixed and can’t be moved, removed, or rearranged.

The Custom HTML block is the first adopter: pasting HTML with a block comment delimiter embedded in it (for example, a <!– wp:paragraph –> block inside a larger static <div>) makes that inner piece editable directly in the canvas, while the surrounding markup remains locked in place. It’s a narrow, developer-facing capability for now—the HTML block is the only place it’s wired up—but it opens the door for custom blocks to offer the same kind of “mostly static, partly editable” experience going forward. (79115)

The dev note can be found on the Make Core Blog: Editable blocks inside the Custom HTML block

Block Bindings for list-items and inner blocks

The List Item block has gained Block Bindings support. A List Item’s content can now be connected to a data source—a custom field, a pattern override, or another registered source—so individual entries in a list can be populated dynamically rather than typed in by hand. The change registers content as a bindable attribute for core/list-item.

A related fix rounds out the feature: previously, if a bound List Item also contained a nested sub-list, that nested list was dropped when the binding was rendered. Now a List Item can carry a bound value and a nested list beneath it at the same time. In practice, this means multi-level lists—say, a team member’s name pulled from a custom field, with a nested list of their current projects underneath—can now be fully dynamic without losing structure.

Tracking: Block Bindings in WordPress 7.1 (#77199)

Connectors authentication improvements

The Connectors framework, which manages WordPress’s connections to external services like AI providers, now supports username and application password authentication as an alternative to API keys. A merged pull request adds a default connector form for this method, along with the underlying authentication type, mirroring the equivalent API already available in WordPress Core.

The change also handles the practical details: saved passwords are masked in the UI and over REST, credentials can be set via constants or environment variables instead of the database, and a companion Core patch keeps the two in sync. For connectors that require an account login rather than a bare API key, this removes the need for a custom settings screen.

This lands alongside a broader open proposal for a PHP-side field registry that would let connector authors declare arbitrary settings—model choice, temperature, custom URLs, and more—the way register_setting() works elsewhere in WordPress. That registry isn’t built yet; the application password work is a first, concrete step (new auth method, not new field types), addressing one of the two gaps the proposal identified rather than the full vision.

Tracking: Connectors: proposal for a PHP-side field registry for connector configuration (#78647)

Blocks package stabilizes two experimental functions

The Blocks package stabilizes cloneSanitizedBlock and sanitizeBlockAttributes, dropping their __experimental prefixes now that the functions have been stable in practice for some time. The old __experimental-prefixed names still work but will log a deprecation notice, so plugins or themes importing them directly should switch to the new names.

Accessible tooltips and toggle tips API

WordPress adds a core mechanism for accessible tooltips (51006), offering an alternative to the title attribute, which is not available to keyboard and touch users. Two new functions cover different use cases: wp_get_tooltip() exposes an accessible name when a control has focus or hover, such as for icon-only buttons, and wp_get_toggletip() implements a popover disclosure with extended help information that stays open until dismissed. Both generate accessible markup that avoids excess verbosity for screen readers and follows best practices for voice command users.

The first toggle tip in core explains the “Remember Me” option on the login screen (55343). Plugin developers can use the functions for their own settings screens and metaboxes. (62741)

A list of all the dev notes can be reviewed from the Make Core blog

Please consider helping!

Awake Freedom TV On Roku is Broken!  🙂

I could no longer maintain the costs on my own, so I moved the off of a dedicated server which was needed for the TV platform to work.  On top of that, I want to build an app Awake Freedom TV app, for mobile phones.  We need your help to first resurrect our TV channel, and then build the mobile app.   In order to do that, I need a minimum of 800/month on subscription payments.  Please help anyway you can with the form below.