The WordPress coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. development team builds WordPress! Follow this site for general updates, status reports, and the occasional code debate. There’s lots of ways to contribute:
Found a bugbugA 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.?Create a ticket in the bug tracker.
“What’s new in GutenbergGutenbergThe 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/…” posts (labeled with the #gutenberg-new tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg and the Editor.
This release ships the new modal-based media editor as the default cropping experience, advances the experimental customizable WordPress dashboard with five new widgets and significant layout polish, and upgrades the editor to ReactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces.
https://reactjs.org 19. Responsive styles now extend to individual blockBlockBlock 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. instances, and Notes blocks gain support for multiple discussion threads. Other changes include DataViews adopting @wordpress/theme design tokens, accessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) refinements across the RevisionsRevisionsThe WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision. interface, continued Real-time Collaboration reliability fixes, and broader preload coverage for faster post editor loads.
Table of contents
Media editor modal becomes the default crop experience
The Media editor modal replaces the existing inline cropping tool in the Block Editor. The modal pattern keeps the familiar Crop button entry point, and brings freeform and aspect-ratio cropping, flip, fine-grained and snap rotation, and metadata editing into one dedicated workflow. (78653)
Experimental customizable WordPress dashboard
The experimental customizable WordPress dashboard — a widgetWidgetA WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user.-based surface available for testing behind an experimental flag in the Gutenberg pluginPluginA 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., allowing users to add, move, resize, and rearrange widgets. It introduces a complete set of widgets — Welcome, Quick Draft, Activity, Site Health, Site Preview, and more — that automatically adapt to different tile sizes. You can fully customize your dashboard by choosing which widgets to display, arranging the layout, adjusting the number of columns, and resizing each widget’s width and height. (77616)
This change is experimental; to give it a try, first go to WP-Adminadmin(and super admin) > Gutenberg > Experiments and enable “New Dashboard experience”.
Responsive styles for block instance
Responsive styles for block instances (78384) building on 23.2’s responsive Global Styles, the Block Style States APIAPIAn 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. extends to the per-instance level (76491). Block instance responsive styles include layout styles (78543) and an Inspector that shows only the relevant settings when a style state is selected. (78280) (78658, 78763, 78670, 78709)
Other Notable Highlights
Real-time Collaboration improvements — Notes blocks support multiple threads (75147), better handling of oversized payloads (>16 MiB) and connection-loss states (77724), protocol-mismatch error handling (76991), fewer refresh storms when peers edit (78483), and a mobile fix for Edit/Join row actions in the post list (78597).
DataViews adopts @wordpress/theme design tokens (75204) — the first significant in-codebase adoption of the design tokens package. A new “Introduction” Storybook page has been added for the tokens themselves (78449).
Accessibility wins — Image block gains a “Mark as decorative” toggle (78064); Revisions diff markers get higher-contrast stripes and scale with user text-size preferences (78473, 78273, 78393); Breadcrumbs block hides separators from screen readers (78524).
Performance — Optimized block-supports CSSCSSCascading Style Sheets. class rendering (78217), lazy-fetched user pattern categories (78568), shared window listeners across block instances (78310), shared MediaQueryList listener in useMediaQuery (78297), and broader preload coverage on edit-post load (78508, 78565).
Components migrations — Continued migrationMigrationMoving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. of __experimentalText, __experimentalHStack, and __experimentalVStack to their stable @wordpress/ui counterparts (78155); Tooltip migration progressed across block-editor, editor, and DataViews consumers (78411, 78466, 78470).
React 19 upgrade (61521) — Gutenberg is now built against React 19. Most code keeps working unchanged; plugin authors using removed legacy patterns (string refs, ReactDOM.render fallbacks, defaultProps on function components) should review React’s upgrade notes.
Changelog
Features
Post Editor
Notes: Support multiple note threads per block. (75147)
UI Card: Full bleed as headerHeaderThe header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. hero image and content cover. (77856)
Visually align Notice from @wordpress/components with Notice from @wordpress/ui. (78231)
Collab SidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme.: Swap near-identical pink for red in avatarAvatarAn avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name. palette. (78299)
Media Editor: Make the modal the default crop experience. (78653)
RTC: Provide PROTOCOL_MISMATCH error handling. (76991)
useDialog: Handle Escape via React onKeyDown so cascade works through portals. (78433)
Block Library
Block/Tabs: Fix editor dirty state on reload by removing unnecessary mount-time attribute init. (78339)
Breadcrumbs block: Hide separator from screen readers. (78524)
Fix ‘InvalidinvalidA resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid. Date’ when clicking on Now in DateTimePicker on Date Block. (78284)
Fix Tabs block losing added tabs when the editor is reopened. (78250)
Fix: Discard unsaved HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. block changes on cancel. (78580)
Image: Preserve width/height when converting Classic blocks to blocks. (78610)
Navigation Link: Preserve custom labels during link updates. (77186)
Navigation: Restore block_core_navigation_submenu_render_submenu_icon() as deprecated shim. (78484)
Prevent images from appearing squished when only one dimension is set. (70575)
Post Editor
Editor: Disable Visual Revisions when classic metaMetaMeta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. boxes are present. (78249)
Editor: Fix Visual Revisions meta keys overlap. (78156)
Editor: Use _n() for revisions count aria-label. (78382)
Fix: Register user-defined taxonomies after user-defined post types. (78497)
Fix: Show collaborators when the top toolbar is active. (78049)
Global styles revisions: Ensure stylebook shows revision previews. (78490)
Script Loader: Defer single-page admin init until DOMContentLoaded (TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress.#65103). (78136)
Upload Media: Render srcset on the front end for client-side-media uploads. (78359)
Block Editor
Block Inspector: Hide Styles tab in preview mode. (78230)
Block Toolbar: Prevent position shifts when using mover control. (77798)
Fix inconsistencies in feature selector processing part 2: Pseudo block instances. (78326)
Fix: Properly merge schema during mergeSchemas part in getBlockContentSchemaFromTransforms. (70615)
List View: Place caret at end of block when selecting. (76797)
Unset grid span defaults with viewport states enabled. (78709)
Data Layer
CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. Data: Avoid duplicate ID-less entity permission requests. (78262)
Fix: Disable collab sync when incompatible meta boxes are present. (78145)
RTC: Fix cursor awareness / presence bugbugA 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. in nested rich text elements. (77673)
RTC: Fix block refresh on every update when a peer edits within the code editor. (78483)
RTC: Sync the content even if it’s a function. (76796)
Real-time Collaboration: Use minimal save payload in persistCRDTDoc. (77050)
Media
Media Editor Modal: Only show the crop active state when using keyboard. (78266)
Media Editor: Anchor cursorless zoom (slider/keyboard) at crop center. (78385)
Media Editor: Enforce a minimum crop size in the image editor. (78268)
Media Editor: Scope keyboard shortcuts to the modal. (78322)
Media Fields: Fix filename truncation with Tooltip. (78453)
Collaboration
RTC: Fix Edit/Join row action invisible on mobile in post list. (78597)
RTC: Fix connection lost error modal when /wp-json/wp-sync/v1/updates exceeds 16 MiB limit. (77724)
Global Styles
Fix block preview for responsive style states. (78538)
Fix inconsistencies in feature selector processing part 1: Global styles. (78276)
Client Side Media
Upload Media: Stop propagating -scaled to sub-size filenames. (78038)
VIPS: Remove dead batchResizeImage and vipsBatchResizeImage exports. (77975)
Paste
Keep <img> inside <a> when pasting plain-text HTML. (78015)
Image Editor: Focus return after closing image crop modal. (78711)
Revisions: Increase diff marker stripe contrast to 75% primary color proportion. (78473)
Revisions: Scale diff markers width with user text-size preference. (78273)
Revisions: Use CSS outline as secondary non-color indicator for diff blocks. (78393)
Block Library
Image block: Add “Mark as decorative” toggle for accessibility. (78064)
Image: Fix missing aria-label on lightbox trigger button for single images. (78426)
Performance
Block supports: Optimize custom CSS class rendering and parsing. (78217)
Fix performance tests when running against old reference commit. (78288)
Post Editor
Edit Post: Hoist setupEditor to run before root.render. (78581)
Edit Post: Consume preload cache before React mount. (78508)
Editor / Block Editor: Lazy-fetch user pattern categories. (78568)
Post Taxonomies: Drop redundant per_page: -1 from taxonomyTaxonomyA taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies. queries. (78569)
Docs: Update iframeiframeiFrame is an acronym for an inline frame. An iFrame is used inside a webpage to load another HTML document and render it. This HTML document may also contain JavaScript and/or CSS which is loaded at the time when iframe tag is parsed by the user’s browser. editor migration guide for WordPress 7.0/7.1. (78401)
Editor: Inline text editor toolbar z-index. (78309)
REST: Guard setAccessible() behind PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher < 8.1 in block-editor settings controller. (78478)
Use WCIcon alias for component Icon imports. (78366)
Use WCTooltip alias for component Tooltip imports. (78396)
Block Editor
Fix additional issues with block registration types. (78416)
Migrate __experimentalText, __experimentalHStack, and __experimentalVStack to Text and Stack. (78155)
Refactor: useMemo on elements and useCallback is back on resetAllFilter. (78329)
Simplify component ESLint rules and extend to routes/widgets. (78519)
Update the BlockAttribute typedef to allow for multi-type attributes. (78517)
Guidelines
Add data-slug attribute to settings list items. (78676)
Fix flaky tests (publish-panel.spec.js focus assertion before panel close completed). (77893)
Guard PHP unit testunit testCode written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression. to avoid failures on old WP versions. (78547)
Perf tests: Capture loading durations before stopTracing(). (78294)
Perf tests: Disable Playwright tracing to remove snapshot overhead. (78295)
Perf tests: Save Chromium traces as CI artifacts. (77974)
Performance tests: Fix template click, delete pages at startup. (78193)
Post Editor perf test: Remove unwanted actions from timed area. (78323)
Preload: BackportbackportA port is when code from one branch (or trunk) is merged into another branch or trunk. Some changes in WordPress point releases are the result of backporting code from trunk to the release branch. user global styles entry for classic themes on WP 6.9. (78546)
RTC: Add command to run in WebSockets mode. (78363)
Tests: Add timezone-mock to test/unit/package.json. (78277)
You must be logged in to post a comment.