Admin bar and menu icons are inline SVGs, not Dashicons
In WordPress 7.2 the admin bar and menu icons are inline SVGs from @wordpress/icons, no longer Dashicons glyphs drawn with CSS ::before. CSS that colors, hides or replaces a core icon through ::before stops working (admin color schemes, admin themes). add_menu_page(), register_post_type() (menu_icon) and WP_Admin_Bar::add_node() (new icon argument) accept a registered icon name such as core-admin/pin; wp_register_icon_collection() and wp_register_icon() add your own.
If your plugin or theme styles core admin icons, also target the element (div.wp-menu-image, .ab-icon) or its svg, not only ::before; menu pages registered with Dashicons keep working.
WordPress 7.2 adds /random/, which redirects to a random published post, and the same under archives (/random/category/<slug>/, /random/author/<name>/, /random/<post-type>/). A new randomable argument on register_post_type() controls eligibility (default true when publicly_queryable and has_archive; post yes, page and attachment no), and the base is set on the Permalinks screen.
To turn it off, add_filter( 'wp_enable_random_content_redirect', '__return_false' ); to change only random picks, check wp_is_random_content_query( $query ) in pre_get_posts.
Beta 4 refines the 7.2 release: accessibility (keyboard focus in Windows High Contrast mode, right-to-left block alignment), editor reliability, and developer APIs (Abilities API, DataViews extensibility, REST API behavior, revisions and input validation). There was no separate Beta 3 announcement: Beta 3 came out alongside the 7.1.4 security release on October 28 (7.1.4 itself is a stable release). Final 7.2 is still scheduled for December 8, 2026.
Test plugins on 7.2 Beta 4 (wp core update --version=7.2-beta4, or Playground), never on production.
Beta 2 continues work on the Abilities API (content querying, capability requirements, schema handling and permissions) and adds server-side registration for DataViews and DataForm. Final 7.2 release is scheduled for December 8, 2026.
Test plugins on the latest 7.2 pre-release (see current.nextWordpress), never on production.
WordPress 7.2 Beta 1 introduces a Secrets API to store credentials such as API keys and tokens, with encryption at rest, credential rotation and custom storage providers (Trac #66187).
On 7.2+, plan to store plugin API keys through the Secrets API instead of plain options; the API may still change during beta.
wpdb::set_sql_mode() now removes NO_BACKSLASH_ESCAPES from the session SQL modes, like it already did for STRICT_ALL_TABLES, TRADITIONAL and ANSI. It only affects the WordPress connection, not the server's global settings.
If you truly need this mode, remove it from the incompatible_sql_modes filter in a db.php drop-in (plugins load too late).
7.1 adds Playlist and Tabs blocks, an API to register your own icons, a persistent admin bar across admin and editors, responsive styling for blocks, a new media editor, and Notes with rich text and @mentions.
Target WordPress 7.1 APIs (abilities filters, icon API, responsive styles) when writing code for current sites.
wp_new_comment_notify_postauthor() checks approval before applying notify_post_author. The default is false for unapproved comments, it is always a strict boolean, and returning true now sends a notification even for held, spam or trashed comments.
If you force notifications with __return_true, check comment_approved first or authors will get emails for spam.
WordPress 7.1 bundles jQuery UI 1.14.2 (was 1.13.3), drops IE support, and removes $.fn._form, $.ui.ie, $.ui.safeActiveElement and $.ui.safeBlur. jQuery.uiBackCompat is set to true.
Remove any use of the removed jQuery UI helpers and retest jQuery UI widgets on 7.1.
SVG Icon API: wp_register_icon() and wp_get_icon()
WordPress 7.1 adds wp_register_icon_collection(), wp_unregister_icon_collection(), wp_register_icon() (inline content or file_path, names like collection/icon-name) and wp_get_icon() to render icons in PHP. Registered icons also show in the Icon block.
Register custom icons on init with this API instead of shipping your own SVG sprite logic.
Admin and Editor removed from the default role picker
In 7.0, Administrator and Editor can no longer be chosen as the new user default role under Settings → General. Site Health warns if one was set before. A default_role_dropdown_excluded_roles filter controls the excluded roles.
Don't tell users to set Administrator or Editor as the default role; use the filter if a plugin truly needs it.
get_the_author_link() and the_author_link() take a new $use_title_attr parameter (pass false to drop the tooltip), and the "Posts by Author" title attribute is removed from the author posts link by default.
Don't rely on the author posts link having a title attribute; the text is still available in the the_author_posts_link hook.