What’s new in Gutenberg 18.8 (17 July)

“What’s new in GutenbergGutenberg The 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.

Gutenberg 18.8 has been released and is available for download!

A total of 217 PRs were merged in Gutenberg 18.8, with 10 first-time contributors! With WordPress 6.6 releasing this week, many contributors are focusing on bugbug A 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. fixes. There are still some great features and enhancements in this release, highlighted below.

  1. Group block shadow support
  2. Background image support for blocks in global styles
  3. Other notable highlights
  4. Changelog
  5. First time contributors
  6. Contributors

Group blockBlock Block 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. shadow support

A popular feature requestfeature request A feature request should generally begin the process in the ideas forum, on a mailing list, as a plugin, or brought to the attention of the core team, such as through scope meetings held for each major release. Unsolicited tickets of this variety are typically, therefore, discouraged., shadows can now be added to the Group block. (63295)

Background image support for blocks in global styles

The background image block support has been updated to allow images to be set in global styles (60100). This means that a background image can be set for all quote or pull quote blocks within a site or theme. Additionally, the controls for background images have been updated to use a popover (60151) so that they’re tucked away when not making changes.

Other notable highlights

Toolbar justification controls for Group and Content blocks

The justification controls for the Group and Content blocks are now exposed in the block toolbar. This makes it easier to quickly update these blocks to be left or right-aligned, using a similar interface to text and button blocks. (62924)

Color support for individual list item blocks

Individual list items within a list block can now have different color styles to the overall list they belong to. (59892)

Block inserter no longer behaves like a dialog box

When opening the block inserter, it will now stay open when interacting with the editor canvas. This makes it easier to move around the document while adding blocks. (63059)

Changelog

View full list of changes

Features

  • DataForm: Implement first prototype using duplicate page action. (63032)

Enhancements

Components

  • BaseControl: Forward ref on VisualLabel. (63169)
  • CustomSelectControlV2: Allow wrapping item hint to new line. (62848)
  • CustomSelectControlV2: Expose legacy wrapper through private APIs. (62936)
  • CustomSelectControl V2: Keep legacy arrow down behavior only for legacy wrapper. (62919)
  • CustomSelectControlV2: Collapse checkmark space when unchecked. (63229)
  • CustomSelectControlV2: Keep item checkmark top aligned. (63230)
  • DateTime: Create TimeInput component and integrate into TimePicker. (60613)
  • FontSizePicker: Use CustomSelectControl V2 legacy adapter. (63134)
  • Tabs: Add vertical indicator animation. (62879)
  • TimeInput: Add label prop. (63106)
  • TimePicker: Add dateOrder prop to sort day, month, and year. (62481)
  • ToolbarButton: Deprecate isDisabled prop and merge with disabled. (63101)
  • Tooltip Component: Add custom class name support. (63157)

Data Views

  • Add padding around selected values in author filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output.. (63212)
  • DataViews filterSortAndPaginate utility: Support sorting by number. (63187)
  • DataViews: Make view.hiddenFields optional. (62876)
  • DataViews: Remove Table Cells animation. (63079)
  • DataViews: Replace supportedLayouts prop with defaultLayouts prop instead. (63287)
  • Duplicate modal: Move to 40px components. (63246)
  • Pages: Include avatarAvatar An 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. in Author field. (63142)
  • Patterns Page: Hide preview column by default. (63213)
  • Posts list powered by DataViews. (62705)
  • Split layout / view options. Use active layout icon for the layout button. (63205)
  • Use status icons in field display. (63289)

Block Library

  • Add example for query block and posts list. (63286)
  • ExcerptExcerpt An excerpt is the description of the blog post or page that will by default show on the blog archive page, in search results (SERPs), and on social media. With an SEO plugin, the excerpt may also be in that plugin’s metabox. block: Add example of the block. (63010)
  • Group: Add block support for shadow. (63295)
  • Login/out block: Add example of the block. (62937)
  • Post content block: Add example of the block. (62968)
  • Post title: Add example of the block. (62955)
  • Table Block: Add toolbar button to add a caption. (47984)

Block Editor

  • Block position controls: Use V2 legacy adapter instead of V1 CustomSelectControl. (63139)
  • DateFormatPicker: Use CustomSelectControl V2 legacy adapter. (63171)
  • Fix inspector inner shadow border. (63245)
  • FontAppearanceControl: Use CustomSelectControl V2 legacy adapter. (63179)
  • Inserter: Remove the dialog behaviour. (63059)
  • SpacingInputControl: Use CustomSelectControl V2 legacy adapter. (63190)

Global Styles

  • Background image: Move controls into a popover. (60151)
  • Block background UIUI User interface controls. (60100)
  • Tweak block background position preview height. (63225)

Extensibility

  • DataViews: Register the deletePost action like any third-party action. (62913)
  • DataViews: Register the export pattern action like any third-party action. (63046)
  • DataViews: Register the reset template and template part action like any third-party action. (63017)

Design Tools

  • Flex dimensions: Rename “Fill” to “Grow”. (62779)
  • List Item: Add color support. (59892)
  • Uniform Focal point labels. (62438)

Font Library

  • Font Library Modal: Enhance pagination appearance. (63210)
  • Font Library: Store font subdirectory in post metaMeta Meta 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.. (63000)
  • Move font directory into uploads to match WP 6.5. (60354)

Layout

  • Add justification to block toolbar in addition to sidebarSidebar A 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.. (62924)

Site Editor

  • Align rename modals. (62874)

Block APIAPI An 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.

  • block.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML.: Allow passing filename as variations field. (62092)

Template Editor

  • Update: Move template areas into a panel. (62033)

Block Variations

  • Automatically select group variation if there is only one available. (61871)

Zoom Out

  • Add a vertical toolbar for zoom out mode. (60123)

New APIs

Block API

  • Introduce “local” attributes and use it for the image block. (63076)

Bug Fixes

  • CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Commands: Fix Pages command link. (63235)
  • Docgen: Fix function param for const function expression. (63034)
  • Enable save draft button for posts with custom post status. (63293)
  • Ensure device previews extra scrollbar only appears when needed. (62952)
  • Styles specificity: Allow comment form input overrides. (62960)

Components

  • CustomSelectControl V2 legacy adapter: Fix trigger button font size. (63131)
  • CustomSelectControl V2: Fix labelling with a visually hidden label. (63137)
  • CustomSelectControl V2: Fix trigger text alignment in RTL languages. (62869)
  • CustomSelectControl V2: Prevent keyboard event propagation in legacy wrapper. (62907)
  • CustomSelectControlV2: Add root element wrapper. (62803)
  • CustomSelectControlV2: Fix item styles. (62825)
  • CustomSelectControlV2: Fix popover styles. (62821)
  • CustomSelectControlV2: Fix select popover content overflow. (62844)
  • CustomSelectControlV2: Tweak item inline padding based on size. (62850)
  • Editor: Fix duplicate save panels. (62863)
  • Fix UnitControl select disabled state colors. (62970)
  • Fix extra scrollbar when a popover extends past the viewport. (62894)
  • Fix the ‘useUpdateEffect’ hook in strict mode. (62974)
  • ProgressBar: Fix indeterminate RTL support. (63129)
  • RangeControl: Fix RTL support for custom marks. (63198)
  • SelectControl: Fix disabled styles. (63266)
  • Tabs: Fix “With tab icons” Storybook example. (63297)
  • Tabs: Fix text-align when text wraps in vertical mode. (63272)
  • TimePicker: Fix time zone overflow. (63209)
  • UnitControl: Fix an issue where keyboard shortcuts unintentionally shift focus on Windows OS. (62988)

Block Library

  • Add Aspect ratio control on Image blocks in Grids. (62891)
  • Audio Block: Do not persist blob urls and fix undo. (63257)
  • File block: Do not persist blob urls and fix undo. (63282)
  • Fix Incorrect URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org basename logic in EmbedPreview. (63052)
  • Fix: Update “Link Text” label to “Text” on Social Icons block #60966. (61715)
  • List: Maintain nested list on parent item removal. (62949)
  • Navigation: Allow themes to override block library text-decoration rule. (63406)
  • Patterns: Check for edited entity content property when exporting. (63227)
  • Reduce specificity of social link icon specific colors. (63049)
  • Refactor Post Date Relative Time Rendering for Future Dates. (62979)
  • Site Editor: Fix template parts ‘Reset’ action. (62951)
  • Video Block: Do not persist blob urls and fix undo. (63238)

Post Editor

  • Editor: Do not truncate post excerpt if not editable. (63314)
  • Fix: Background height and padding in non-iframeiframe iFrame 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 canvas. (63222)
  • Fix: Crash when onActionPerformed is used with callback actions. (63120)
  • Fix: Permanently delete post action does not calls onActionPerformed. (63121)
  • Fix: Triple scrollbars in device previews. (62940)
  • Post editor: Increase specificity of bottom padding. (63288)
  • Actions: Translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. should depend on number of items. (62857)

Data Views

  • DataViews list layout: Fix action alignment. (62971)
  • DataViews: Restore preview focus outline in grid layout. (62991)
  • Fix buttonless table headerHeader The 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. alignment. (62877)
  • Fix typo in string for trashing posts. (63119)
  • Patterns: Avoid mapping template parts objects to patterns. (62927)

Block Style Variations

  • Block supports: Ensure tools panel dropdown are visible on mobile. (62896)
  • Section Styles: Fix error when blocks are deregistered. (63252)
  • Section Styles: Prevent flash of variation styles in post editor. (63071)
  • Section Styles: Resolve ref values in variations data. (63172)

Layout

  • Only hide drop indicator when grid has isManualPlacement set. (63226)
  • Remove dotted border from grid dropzone. (63162)
  • Resizing in Auto mode shouldn’t add columnStart and rowStart values. (63160)
  • Fix invalidinvalid A 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. css for nested fullwidth layouts with zero padding applied. (63436)

Global Styles

  • Elements: Avoid specificity bump for top-level element-only selectors. (63403)
  • Global styles revisionsRevisions The 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.: Ensure that user-defined variation styles CSSCSS Cascading Style Sheets. is generated. (62768)
  • Root padding styles: Include alignwide in nested has-outer-padding logic. (63207)
  • Remove letter-spacing from typography element preview. (60322)
  • Only add customizerCustomizer Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings. additional CSS to global styles in block themes. (63331)

Site Editor

  • Make SiteHub available for Pages, Patterns, and Templates in mobile viewports. (63118)
  • Patterns and templates cannot be edited from sidebar mobile view. (63002)
  • Site Editor Sidebar: Hide horizontal scrollbar when navigating. (63194)

Synced Patterns

  • Ensure disable overrides button is active for image blocks with captions or links. (62948)
  • Fix second scrollbar when editing patterns in the post editor. (62909)
  • Pattern overrides: Fix aspect ratio not working in image with overrides. (62828)

Block Editor

  • Featured ImageFeatured image A featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts. Panel: Align text and icons horizontally to avoid clipping. (62842)
  • Zoom Out: Move the hook to the inserter component. (63315)
  • Fix error when calling the PostActions view-post callback. (63460)

Block bindings

  • Disable post meta editing in blocks inside a Query LoopLoop The Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop.. (63237)
  • Image block: Ensure extenders that rely on media ids in block htmlHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. are supported by block bindings. (63013)

Patterns

  • Fix: Restrict export pattern action to user patterns. (63228)

Posts/Tags/Categories Screen

  • Constrain is-fullscreen-mode adminadmin (and super admin) body class to posts list. (63166)

Inspector Controls

  • Fix button wrapping in the document Inspector. (63062)

Design Tools

  • Duotone: Fix code typo, to ensure Duotone updates correctly in Safari. (62953)

Commands

  • Fix issue of HTML entities rendering in command menu. (62606)

Typography

  • Use available font weights and styles in FontAppearanceControl. (61915)
  • Font Appearance Control: Refactor font appearance fallbacks. (63215)

AccessibilityAccessibility Accessibility (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)

  • Allow Escape key to move focus to editor region when in select mode. (62196)
  • Focus Editor Region from Template Footer Click. (62595)

Components

  • Button: Stabilize __experimentalIsFocusable prop. (62282)
  • Fix inaccessible disabled Buttons. (62306)
  • Make Tabs have a fluid height. (62027)
  • ToolbarButton: Always keep focusable when disabled. (63102)

Global Styles

  • Fix unlabeled Remove shadow buttons. (63197)

Block Library

  • Make usage of the settings icon more consistent. (63020)

Data Views

  • Add translation context for ‘view options’ label. (63031)
  • Fix filter chip contrast. (62865)

Media

  • Update URLPopover role and focus return. (61313)

Performance

  • Core data: Batch receiveUserPermission. (63201)
  • Perf tests: Make pages test compatible with base branchbranch A directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch".. (63204)

Block hooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same.

  • Optimize selectors in the control component. (63141)

Experiments

Layout

  • Allow inserting blocks directly in empty grid cells. (63108)
  • Use manualPlacement attribute to set manual grid mode and allow responsive behaviour in both modes. (62777)

Documentation

  • Add note about postcss-urlrebase package patchpatch A special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing.. (63015)
  • Add RichText formatting example to the Editor curation documentation. (63065)
  • Block supports: Add documentation for ‘splitting’. (63016)
  • Fix typo to be preposition, not verb, in some package comments and documentations. (62945)
  • Fix urls to developer documentation. (63104)
  • Interactivity API: Fix minor typos in code snippets. (62890), (63234)
  • Interactivity API: Fix variable name in color directive example. (62912)
  • Interactivity API: Include references to more examples from the documentation. (63025)
  • Interactivity API: Recommend kebab-case in data-wp-class. (62817)
  • Remove link to polyfill.io. (62883)
  • Storybook: Fix links for block editor examples. (63132)
  • ToolbarButton: Fix documentation for accessibleWhenDisabled. (63140)
  • Update ReactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. dev docs rule hook URL. (62995)

Code Quality

  • Add linguist-documentation attribute to docs/ directory. (62651)
  • Conditionally call focus with getEditorRegion. (62980)
  • Core Data: Remove entity configuration ‘__experimentalNoFetch’ flag checks. (63303)
  • Dependencies: Upgrades and deduplication. (62657)
  • Format Library: Clean up ‘Highlight’ format components. (62965)
  • Remove postcss-local-keyframes from dependencies. (63224)
  • Upgrade postcss-urlrebase package. (63075)

Data Views

  • DataViews: Fix double check in isTemplateRemovable. (63021)
  • DataViews: Remove the AnyItem type. (62856)
  • DataViews: Removing mapping of user patterns to temporary object. (63042)
  • DataViews: Replace hiddenFields configuration with fields property instead. (63127)
  • DataViews: Simplify selection setting. (62846)

Block Editor

  • Remove CSS hack for Internet Explorer 11. (63220)
  • Remove duplicate translator comment. (62860)

Components

  • Allow ariakit and framer motion imports in the components package. (63123)
  • Normalize focusable disabled ToolbarButton usage. (63130)
  • Sidebar: Add a shared component for the inserter and list view. (62343)
  • Tabs: Split animation logic into multiple separate composable utilities. (62942)

Global Styles

  • Global Styles: Allow variations to be filtered by multiple properties. (62847)
  • Global Styles: Simplify code to fetch color and typography variation. (62827)
  • Make a shared component for typography and color preview. (62829)
  • Section Styles: Clean up block style variation filters. (62858)

Block Library

  • Gallery Block: Clean up v1 code. (63285)

Site Editor

  • Clean up unused Table component. (63283)

Rich Text

  • Raw handling: Remove IE11 fallback code. (63219)

Zoom Out

  • Replace deprecated selector. (63144)

Block bindings

  • Add comment about useSelect usage in withBlockBindingSupport. (63005)

HTML API

  • Compat: Update HTML API with changes from 6.6. (63089)

Tools

  • Dependency extraction: Map to regenerator-runtime instead of wp-polyfill. (63091)
  • Env: Remove version field from docker-compose configuration. (63099)
  • Eslint-pluginPlugin A 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: Add method-signature-style TypeScript lint rule. (62718)
  • Scripts: Ensure that typescript-eslint checks for unused vars. (62925)
  • Update new release issue template to remove core editor chat item. (62864)

Testing

  • Automatically sync backportbackport A 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. changelog to issue. (62973)
  • Block styles variations E2E: Wait for Save button before editing global styles. (62915)
  • Cherry pick automation: Fix for forks. (62900)
  • Cherry pick workflow: Improve message after conflictconflict A conflict occurs when a patch changes code that was modified after the patch was created. These patches are considered stale, and will require a refresh of the changes before it can be applied, or the conflicts will need to be resolved.. (62826)
  • DataViews: Add performance test for pages. (63170)
  • Fix typo in column block fixture file. (63007)
  • Performance tests: Fix for 6.5. (62871)
  • Performance tests: Restore 6.5-compatible locator. (63041)
  • Re-enable image block cropping test (#62781). (62854)
  • Update method for changing the content in ‘editor-modes’ end-to-end test. (62957)
  • Update the project-management-automationaction to use Node.js 20. (62851)
  • Upgrade web-vitals package. (63019)

Plugin

  • Add local version of wp-env schema to .wp-env.json. (63253)

Build Tooling

  • Build: Enable TypeScript skipDefaultLibCheck. (63056)

First time contributors

The following PRs were merged by first-time contributors:

  • @airman5573: Fix variable name in color directive example for Interactivity API. (62912)
  • @aliaghdam: Tooltip Component: Add custom class name support. (63157)
  • @bogiii: DateTime: Create TimeInput component and integrate into TimePicker. (60613)
  • @Chrico: Scripts: Ensure that typescript-eslint checks for unused vars. (62925)
  • @dhananjaykuber: Fix Incorrect URL basename logic in EmbedPreview. (63052)
  • @iamibrahimriaz: Update iapi-about.md. (63234)
  • @iworks: Translation should depend on number of items. (62857)
  • @roygbyte: Fix typo to be preposition, not verb, in some package comments and documentations. (62945)
  • @shreya0204: Add justification to block toolbar in addition to sidebar. (62924)
  • @sejas: Fix: Error when calling the PostActions view-post callback. (63460)

Contributors

The following contributors merged PRs in this release:

@aaronrobertshaw @afercia @airman5573 @akasunil @aliaghdam @amitraj2203 @bogiii @carolinan @Chrico @ciampo @costasovo @creativecoder @DaniGuardiola @desrosj @dhananjaykuber @dmsnell @ellatrix @fluiddot @geriux @hbhalodia @iamibrahimriaz @iworks @jameskoster @jasmussen @jeryj @jffng @jorgefilipecosta @jsnajdr @juanmaguitar @kevin940726 @luisherranz @MaggieCabrera @Mamaduka @matiasbenedetto @michalczaplinski @mikachan @mirka @ndiego @ntsekouras @oandregal @ockham @peterwilsoncc @ramonjd @richtabor @roygbyte @SantosGuillamot @scruffian @shail-mehta @shreya0204 @sirreal @stokesman @swissspidy @t-hamano @talldan @tellthemachines @tyxla @vipul0425 @westonruter @youknowriad

Props to @aaronrobertshaw, @annezazu, and @priethor for their support with this post, and @joen for the visual assets!

#block-editor, #core-editor, #gutenberg, #gutenberg-new

What’s new in Gutenberg 18.7? (03 July)

“What’s new in GutenbergGutenberg The 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.

Gutenberg 18.7 has been released and is available for download!

A total of 115 PRs were merged in Gutenberg 18.7, with 7 first-time contributors! With WordPress 6.6 rapidly approaching, many contributors are focusing on bugbug A 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. fixes. However, this release still includes some great features and enhancements, including the manual mode for the grid interactivity experiment!

  1. Drag and drop grid items in manual mode
  2. Content panel for template parts
  3. Other Notable Highlights
  4. Changelog

Drag and drop grid items in manual mode

In order to allow more precise manipulation of the grid, all grid items are now fixed in place when using manual mode. Grid items can then be moved around with drag and drop, with the blockBlock Block 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. movers (in any direction), or by changing the values of column and row in the Dimensions sidebarSidebar A 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.. This new feature is a part of Grid interactivity and is available behind an experimental flag. (#61025)

Content panel for template parts

Template parts now show the content panel in the editor settings. (#62034)

Other Notable Highlights

Text orientation controls have been added to more blocks (site-title, site-tagline, verse, and button block.) (#62727)

The sticky toggle for posts can be found in its new home, the “Status and visibility” popover. (#62782)

The document bar is now displayed when viewing the Style book and Style revisionsRevisions The 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. (#62669)

Changelog

Enhancements

  • Add: Content panel for template parts. (62034)
  • Move Sticky toggle to status popover. (62782)
  • Rename yieldToMain to splitTask and export from wordpress/interactivity. (62665)
  • Update: Check assignable properties on the duplicate action. (62590)
  • Update: Followups to the template and template_lock rest apiREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. addition. (62696)
  • Update: Reverse backportbackport A 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. changes on post type REST API changes. (62751)
  • Align naming modals. (62788)
  • Add writing mode support to other blocks. (62727)
  • Display the DocumentBar for Style Book and Style Revisions. (62669)
  • fetchLinkSuggestions: Allow for partial matching. (62570)
  • DataViews: Support passing the registry to actions callbacks. (62505)
  • Add tooltip on hover of color and typography presets. (62201)
  • Revert change that removes the social link block when pressing backspace in the URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org Popover. (61344)

Bug Fixes

  • Add context in post actions APIAPI An 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.. (62443)
  • Add html to reset styles for the .editor-styles-wrapper container. (62350)
  • Cherry pick script: Make authenticated requests. (62473)
  • Editor: Fix blocked Post Publish Panel buttons on mobile. (62736)
  • Fix cherry-pick script, add missing –repo arg. (62643)
  • Fix rawHandling, pasteHandling for mixed content with blocks and classic. (62545)
  • Fix: Active template is not highlighted properly in list view. (62811)
  • Fix: Check Capability to create pages on DataViews add new page button. (62592)
  • Fix: Check ability to create patterns on the add new pattern modal. (62633)
  • Fix: Check create capability on duplicate post action. (62620)
  • Fix: Check permissions on duplicate pattern and template part actions. (62757)
  • Fix: Comments and Pingbacks get cleared out when a pattern is edited. (62507)
  • Fix: DataViews: Active page is not highlighted properly in list view. (62378)
  • Fix: Include permission management on permanently delete, rename, and restore. (62754)
  • Fix: List view renders an empty menu when no actions are eligible. (62786)
  • Fix: Post_type template is not used when creating a page in site editor. (62488)
  • Fix: Resetting template part causes notification saying it’s been delete. (62521)
  • Fix: The trashTrash Trash in WordPress is like the Recycle Bin on your PC or Trash in your Macintosh computer. Users with the proper permission level (administrators and editors) have the ability to delete a post, page, and/or comments. When you delete the item, it is moved to the trash folder where it will remain for 30 days. post action doesn’t take into account user capabilities. (62589)
  • Inspector: Improve handling of long words in post titles. (62691)
  • Revert “Revert test data for WithSlug variation (#62579)”. (62587)
  • Show publish panel only in edit mode. (62813)
  • Site Editor: Improve the frame animation. (62676)
  • DataViews: Remove selection correcting, set initial state. (62796)
  • Pattern overrides: Disallow override for image with caption/href. (62747)
  • Editor: Make VisualEditor a stacking context. (62681)
  • Fix toggle active font logic. (62614)
  • Save Panel: Remove connections icon and fix padding. (62542)
  • Editor: Render editPost slots only in the post editor (same for site editor). (62531)
  • Fix: Don’t allow synced patterns to be inserted on shuffling. (62422)
  • Fix ExcerptPanel decode issue. (62336)

Block Library

  • Add letter spacing inheritance for the navigation block. (62745)
  • Caption utility component: Allow the main CSSCSS Cascading Style Sheets. Class Name to be excluded from the markup. (62485)
  • Fix: Empty style attribute issue in navigation block. (62600)
  • Image Block: Fix Aspect Ratio button position. (62776)
  • Media & text: Update the image replacement logic. (62030)
  • Post Date Block: Fix PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher warning error. (62783)
  • Template Part: Improve how the tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) name attribute is handled. (62785)
  • fix: Update block categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. to design and build documentation. (61905)

Global Styles

  • Allow children of alignfull flow layouts to have root padding. (62670)
  • Prevent duplicate block style variations CSS. (62465)
  • Remove obsolete hook resolving shared block style variations. (62808)
  • Section Styles: Switch away from using init for variation registration. (62640)
  • Skip registration of variation styles when unsupported. (62529)
  • Styles: Lower specificity of figcaption style to allow theme.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. override. (62689)

Components

  • CustomSelectControl V2: Fix setting initial value and reacting to external controlled updates. (62733)
  • CustomSelectControlV2: Handle long strings in selected value. (62198)

Block Editor

  • Raw handling: Fix too aggressive indented list removal. (62622)
  • Writing flow: Split heading into default block. (61891)

AccessibilityAccessibility Accessibility (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)

  • Fix custom color palette. (62753)
  • Fix lock modal dialog accessibility and semantics. (62795)
  • Image block: Fix focus style not around whole image when linked. (62556)
  • Pages data view: Update view icons. (62136)
  • Make the fonts management modal dialog more discoverable. (62129)

Performance

  • Improve performance of compute_style_properties method. (62522)
  • Run block variation hook only for matches. (62617)
  • Section Styles: Improve performance and conceptual consistency. (62712)

Experiments

  • Grid interactivity: Allow blocks to be positioned in manual mode using drag and drop. (61025)

Documentation

  • Add VisualEditorGlobalKeyboardShortcuts documentation. (62710)
  • Add changelog entry for splitTask export from wordpress/interactivity. (62805)
  • Add documentation for PostSlug and PostSlugCheck component. (62102)
  • Adds comment on blocks resource referencing wp_block post type. (62722)
  • Changelogs: Standardize sections. (58268)
  • Correct documentation for WP_Block_Parser_Frame class. (62598)
  • Create Block: Add missing changelog entries. (62791)
  • Docs/iAPI: Fix wrong code snippet in data-wp-run example. (62835)
  • Docs/iapi warnings new directives wp 6 6. (62789)
  • Fix async directives API documentation. (62759)
  • Fix: Remove inexistent link from the documentation. (62624)
  • Interactivity API docs: Add wp-async directives doc. (62663)
  • Query LoopLoop The Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop. block: Clarify explanation around query loop variation example. (62605)
  • Small Typo correction in block-library.md file. (62765)
  • Update link to API section in block-editor README.md. (62671)
  • Update old links in wordpress/babel-preset-default. (62616)
  • Updates the reference links in wordpress/compose documentation. (62593)
  • [Developer Documentation] fix link URL. (62725)

Code Quality

  • Autoformat changelogs. (62650)
  • Autoformat e2e-tests package JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/.. (62572)
  • Edit site: Do not autoformat edit-site/lib. (62573)
  • Move dep to dev deps. (62673)
  • Rename readme file with uppercase extension. (62697)
  • Site Editor: Don’t render empty body tag. (62769)
  • Change grid-visualizer folder name to grid. (62810)
  • Add lib-font credits and license in source code. (60973)

Components

  • Remove Framer Motion from DropZone. (62044)
  • CustomSelectControlV2: Fix handling of extra attributes passed to options in the legacy adapter. (62255)

Tools

  • Dependencies: Upgrade @octokit/webhooks. (62666)
  • Rename the wp-env schema to not be a dotfile. (62634)
  • env: Ignore \$schema key in environment configuration parsing. (62626)

Testing

  • Add end-to-end test to ensure block bindings work well with symbols and numbers. (62410)
  • CustomSelectControl: Align v1 and legacy v2 unit tests. (62706)
  • Fix end-to-end tests in dev mode. (62642)
  • Improve maintainability of theme json class tests. (62463)
  • Release automation: Try cherry-picking automation. (62716)
  • Remove changelog checks for branches other than trunktrunk A directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision.. (62645)
  • Skip failing image block test. (62781)
  • Skip test: Create a new page, edit template and toggle page template preview. (62799)
  • Tests: Simplify test set up in WP_Block_Supports_Block_Style_Variations_Test. (62637)
  • Theme JSON resolver: Read theme.json files from the styles/ folder only once. (62638)

Build Tooling

  • Generic name for previous version of WP tests. (62853)
  • GithubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ PHP changes workflow: Remove it. (62609)

Various

  • Update Private API opt-in string for WP 6.6. (62635)
  • Update caniuse-lite dependency to latest version. (62611)

First-time contributors

The following PRs were merged by first-time contributors:

Contributors

The following contributors merged PRs in this release:

@aaronrobertshaw @aatanasovdev @afercia @ajlende @akasunil @amitraj2203 @artemiomorales @carolinan @cbravobernal @ciampo @creativecoder @DaniGuardiola @dilipbheda @ellatrix @fullofcaffeine @geriux @graylaurenm @gziolo @itzmekhokan @ivan-ottinger @jameskoster @jorgefilipecosta @juanmaguitar @kevin940726 @luisherranz @MaggieCabrera @matiasbenedetto @michakrapp @mirka @noisysocks @ntsekouras @oandregal @peterwilsoncc @ramonjd @sabernhardt @SantosGuillamot @saulyz @shail-mehta @sirreal @snehapatil2001 @spacedmonkey @stokesman @t-hamano @talldan @tellthemachines @up1512001 @vcanales @vipul0425 @westonruter @youknowriad

Props to @joen for the visual assets, @andrewserong, @talldanwp, @ramonopoly, and @aaronrobertshaw for help drafting and proofreading this post, @bernhard-reiter, @priethor, @youknowriad, @mikachan, @andrewserong, and @ramonopoly for debugging and fixing the release workflow.

#block-editor, #core-editor, #gutenberg, #gutenberg-new

What’s new in Gutenberg 18.6

“What’s new in GutenbergGutenberg The 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.


Gutenberg 18.6 has been released and is available for download!

51 contributors have shipped 157 pull requests in this release, and a big welcome to four new contributors. With WordPress 6.6 rapidly approaching, many contributors are focusing on bugbug A 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. fixes, with this release including a total of 62 fixes. There are still some great features being worked on, and this release introduces the new background image feature to several blocks.

Thanks to everyone involved in this release! 👏

  1. Background image support for Quote, Verse and Post Content blocks
  2. DataViews: Extensibility APIs
  3. Changelog
  4. First-time contributors
  5. Contributors

Background image support for Quote, Verse and Post Content blocks

Screenshot of the quote block with a background image
Screenshot of the verse block with a background image

Freshen up the look of the quote, verse, and post content blocks using the new background image feature.

Previously, options for background images were limited to container blocks like the Cover and Group blocks, but with the feature now supported across several blocks, it’s easier for users to attain the look they want without nesting blocks.

Follow all the work on background images in the GitHub tracking issue.

DataViews: Extensibilty APIs

Very early work on extensibility for DataViews was shipped in this release.

‘DataViews’ is the component that powers the post listing views available in the Site Editor, and in the future will become an important part of the new adminadmin (and super admin) design project.

The APIAPI An 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. being explored will allow the registration of actions for different ‘entities’ (post types and other types of data represented by the listings). Right now, the API is private to the Gutenberg PluginPlugin A 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 and will undergo further development and testing before being made public for third parties.

Find out more in the GitHub pull request for the feature, and read the recent update on DataViews for more background on the work.

Changelog

Enhancements

Design Tools

  • Post content blockBlock Block 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.: Add background image and padding support. (62499)
  • Quote blocks: Add background image and minimum height support. (62497)
  • Verse block: Add background image and minimum height support. (62498)

Block Library

  • Post Date & Comment Date: Add relative date format. (62298)
  • Replace “Add new post” link text with more meaningful Label (v2). (62277)

Block Editor

  • LinkControl: Refined the display of the link preview title and URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org when both are same. (61819)
  • Update URL to uppercase. (62231)

Block bindings

  • Change bindings panel title, add description. (62489)

Site Editor

  • Unify DataViews HeaderHeader The 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. Title & Subtitle. (62429)
  • Template inspector: Small visual adjustments. (62537)

Document Settings

  • FlatTermSelector: Update the term suggestion limit. (62359)

Global Styles

  • Update custom CSSCSS Cascading Style Sheets. handling to be consistent with block global styles. (62357)

Post Editor

  • Try: Re-enable ReactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. StrictMode. (61943)

New APIs

Extensibility

  • DataViews: Bootstrap Actions Extensibility API. (62052)

Bug Fixes

  • CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Data: Fix errors when the entities list doesn’t contain configuration key. (62346)
  • Data Views: Bulk toolbar covering other clickable elements. (62333)
  • Fix: Omit default parameters from pages, template parts, and patterns. (62372)
  • Fix: Show homepage link on frontpage instead of the slug. (62279)
  • Fix: Unquoted file argument in declaration check script. (62482)
  • List: Fix pasting. (62428)
  • Revert CSS removal for interface footer breadcrumbs. (62309)
  • Revert test data for WithSlug variation. (62579)
  • Scripts: Pin the wordpress/scripts version to a version supported by 6.5. (62234)
  • Site Editor Hub: Simplify. (61579)
  • Style Book: Allow activation when the canvas mode is “view”. (62212)
  • Top toolbar: Fix half a pixel artifacting of the bottom border. (62225)
  • Try: Contextual frame bg color to avoid artifacting. (62223)
  • Try: Fix mover positioning. (62226)
  • Update instances of text-wrap: Pretty to fall back to balance. (62233)
  • MediaUpload: Remove dialog markup on close. (62168)

Global Styles

  • Add default-spacing-sizes and default-font-sizes options for classic themes. (62252)
  • Add custom CSS for block style variations. (62526)
  • Color Variations: Use Grid rather than VStack. (62445)
  • Don’t apply the background and text colors to typography previews. (62578)
  • Fix UIUI User interface appearing on blocks that don’t support text alignment. (62376)
  • Fix UI order for theme.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. spacing sizes. (62199)
  • Fix registration of theme style variation defined block styles. (62495)
  • Only use single property variations as color/type presets. (62469)
  • Section Styles: Register block style variations on init. (62461)
  • Section styles: Consolidate variation name. (62550)
  • Section styles: Support i18ni18n Internationalization, or the act of writing and preparing code to be fully translatable into other languages. Also see localization. Often written with a lowercase i so it is not confused with a lowercase L or the numeral 1. Often an acquired skill. for variations declared in theme.json or theme style variations. (62552)
  • Sort spacing sizes when all slugs begin numerically. (62567)

Site Editor

  • Change Site Editor to Edit site. (62501)
  • Fix “insert before/after” not showing for blocks in site editor. (62530)
  • Site Export: Ensure that the export endpoint uses Gutenberg theme classes. (61561)
  • Update old document URLs to new ones. (62206)
  • Update sidebarSidebar A 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. title + icon + site title alignment. (62191)

Block Editor

  • Inserter: Allow focus to move to the toggle when opening the inserter. (62513)
  • Inserter: Return the same items when the state and parameters don’t change. (62263)
  • Remove ‘rootClientId’ argument for block lock selectors. (62547)
  • Update fetchLinkSuggestions to sort results by relevancy. (62397)

Block Library

  • Fixed Media Text Block Issue : When crop image to fill is enabled, the image in nested media & text blocks does not show. (62182)
  • Media & Text block: Fix nested Media & Text block media position issue with increased CSS specificity. (62184)
  • Query: Adjust the position of sticky search field in Patterns modal. (62370)

Post Editor

  • Editor: Avoid remounts of DocumentBar. (62214)
  • Editor: Make revisionsRevisions The 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. more prominent. (62323)
  • Editor: Refine availability of rename post action. (62248)
  • Fix move CONTENT_ONLY_BLOCKS into component body to ensure the editor.postContentBlockTypes filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. gets called whenever the values are used. (62292)

Components

  • Ensure that openref is defined before accessing to .current. (62508)
  • Fix: Update styles for checkbox and radio controls. (61696)
  • Tabs: Prevent accidental overflow in indicator. (61979)

List View

  • Fix home and end key behaviour in very long lists. (62312)
  • Respect default shortcuts in modals. (62479)
  • Show context menu for content-only blocks in posts. (62354)

Block bindings

  • Fix applying bindings or pattern overrides to button blocks with empty text. (62220)
  • Fix site editor breaking when user selects bound and non-bound blocks at the same time. (62268)
  • Revert changes to bindings replacement logic to not use regex. (62355)

Synced Patterns

  • Block Bindings / Pattern Overrides: Prevent normal attribute updates when a __default binding exists. (62471)
  • Fix showing double icons for connected blocks in pattern editor. (62317)

Data Views

  • DataViews: Fix unnecessary horizontal scrollbar in list layout. (62448)
  • Page creation and duplication: Decode HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. entities in success notices. (62313)

Patterns

  • Fix increasingly big canvas in the post editor when editing patterns. (62360)
  • i18n: Patterns: Disambiguate singular & plural uses of ‘Synced’ & ‘Unsynced’. (62375)

Data Layer

  • Data: Add error handle to the ‘registry.batch’ method. (62322)

Block Variations

  • Compare objects based on given properties. (62272)

Block Styles

  • Remove core block style variations filters and action. (62090)

AccessibilityAccessibility Accessibility (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)

  • Add lint rule for inaccessible disabled Button. (62080)
  • Placeholders: Fix contrast. (62416)

Global Styles

  • Display tooltips for pagination buttons on styles revision. (62395)

Site Editor

  • Make edit site pagination buttons accessibly disabled. (62267)

Performance

  • reporter: Print the stdout/stderr from the worker. (62316)

Block bindings

  • Only run block bindings Gutenberg logic for sites using WordPress versions below 6.5. (62363)

Interactivity API

  • Use data-wp-on-async directives in core blocks when handler does not need synchronous access to event. (62160)

Experiments

Posts/Tags/Categories Screen

  • Bootstrap the dashboard layout. (62409)
  • Posts Dashboard: Add a new experimental empty page. (62406)

Documentation

  • Add @global PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher documentation. (60539)
  • Add documentation for PostSticky and PostStickyCheck component. (62100)
  • Add documentation for WordCount component. (62217)
  • Added documentation for PostTrash & PostTrashCheck TimeToRead TextEditorGlobalKeyboardShortcuts PostPublishButtonLabel Component. (62116)
  • Better changelogs for the JSX transform upgrade. (62265)
  • Corrected @SInCE Order in Php documentation. (61992)
  • Docs: Explicitly mention new behavior coming in WP 6.6 for block variations. (62399)
  • EntitiesSavedStates editor component. (62377)
  • Fix @since tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) in docblockdocblock (phpdoc, xref, inline docs) in WP_Theme_JSON_Data_Gutenberg. (62425)
  • Fix: Invalidinvalid A 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. link on explanations documentation. (62487)
  • Fixing minor syntax in DataView example code. (62560)
  • Interactivity API template create block: Removed warning for generated README from template. (62324)
  • PostPublishButton, PostPublishButtonLabel editor components. (62379)
  • PostPublishPanel editor component. (62380)
  • PostSwitchToDraftButton editor component. (62381)
  • PostSyncStatus editor component. (62382)
  • PostTaxonomies, PostTaxonomiesCheck, PostTaxonomiesFlatTermSelector, PostTaxonomiesPanel related editor components. (62384)
  • Several typo correction in documentations. (62433)
  • TableOfContents editor component. (62385)
  • ThemeSupportCheck editor component. (62387)
  • Update React API reference links in wordpress/element reference-guides. (62475)
  • Update: Slotfill documentation samples (links, code, and rephrase). (62271)
  • UseEntitiesSavedStatesIsDirty editor component. (62388)
  • block.json schema: Add supports.splitting field. (62209)

Code Quality

  • Add support for local keyframes through a PostCSS plugin. (62476)
  • Block style variation: Rename hook. (62464)
  • Chore: Simplify a padding style on global styles. (62291)
  • Convert autop package to TS. (62583)
  • Convert blob package to TS. (62569)
  • Convert escape-html package to TS. (62586)
  • Convert token-list package to TypeScript. (62584)
  • Convert warning package to TS. (62557)
  • Editor: Cleanup styles and classnames. (62237)
  • Editor: Deprecate PostSwitchToDraftButton. (62402)
  • Editor: Introduce the Editor component and use it in the site editor. (62274)
  • Fix unintended overwrite of eslint no-restricted-syntax. (62301)
  • Fix: Add network-active to valid options in PluginStatus Type definition. (62450)
  • Fix: Flakey deferred store test. (62571)
  • Fix: Remove unused code from dataviews styles. (62275)
  • Fix: Remove unused typography panel styles. (62295)
  • Fixed : Disambiguate “Cover” translatable string in the context of background-panel.js. (62440)
  • Move the template part menu items to the editor package. (62366)
  • Shortcut Help modal: Remove CSS hack for Internet Explorer 11. (62564)
  • Use stable reference for getEntityActions action. (62536)

Global Styles

  • Global styles code quality refactoring. (62299)
  • Migrate theme.json based on origin. (62305)
  • Send theme object to setUserConfig. (61805)

Synced Patterns

  • Extract the pattern overrides toolbar indicator from the block-editor package. (62514)
  • Remove unused syncDerivedUpdates action. (62229)

Post Editor

  • Editor: Combine selector in provider component. (62407)
  • Editor: Use the Editor component in the post editor. (62339)

Site Editor

  • Remove editor specific classes from shell wrapper. (62389)
  • Remove unused code. (62286)

Icons

  • Fix React warning error for offline icon. (62353)

Data Views

  • Chore: Simplify a padding style on dataviews. (62276)

Block Editor

  • Use border instead of hr for filtered block list separator. (62249)

Block bindings

  • Use preview instead of publishing post in block bindings tests. (62235)

Block API

  • Parser: Update validateBlock to use fixedBlock. (62178)

Tools

Testing

  • Fix flaky Site Editor command center end-to-end test. (62454)
  • Perf Tests: Use backward-compatible locators. (62362)
  • Test using Node.js 22.x. (62341)
  • Try: Fix flaky DataViews end-to-end test. (62413)
  • Update Node version for flaky test reporter. (62401)
  • end-to-end Utils: Add retry mechanism to the REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. discovery. (62331)

Build Tooling

  • Build JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. module only in development mode. (62398)
  • Speed up check-build-type-declaration-files. (62538)

wp-env

  • Add JSON Schema for .wp-env.json files. (36276)
  • Add WP_ENV_TESTS_MYSQL_PORT / .wp-env.json .env.tests.mysqlPort option etc. (61057)

Various

  • Update all ConfirmDialogs in the codebase to be size=medium. (62532)

REST API

  • Themes REST API endpoint: Add stylesheet_uri and template_uri fields to the response (WP 6.6). (62211)

First-time contributors

The following PRs were merged by first time contributors:

Contributors

The following contributors merged PRs in this release:

@aaronrobertshaw@aaronware@afercia@ajlende@akasunil@amitraj2203@andrewserong@BrianHenryIE@carolinan@carstingaxion@cbravobernal@colorful-tones@DaniGuardiola@desrosj@ellatrix@fabiankaegy@geriux@gigitux@gziolo@jameskoster@jasmussen@jeryj@joemcgill@jorgefilipecosta@jsnajdr@juanmaguitar@kevin940726@Mamaduka@mcsf@mirka@narenin@noisysocks@ntsekouras@oandregal@ockham@ramonjd@richtabor@SantosGuillamot@scruffian@shail-mehta@sirreal@stokesman@t-hamano@talldan@tellthemachines@tjcafferkey@up1512001@vipul0425@westonruter@WunderBart@youknowriad

Props to @jameskoster for the visual assets, @priethor for handling the release candidaterelease candidate One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). at short notice, @andrewserong, @isabel_brison, @annezazu, and @matveb for help with drafting and proof reading this post.

#block-editor, #core-editor, #gutenberg, #gutenberg-new

What is new in Gutenberg 18.5 (05 Jun)

“What’s new in GutenbergGutenberg The 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.

Gutenberg 18.5 has been released and is available for download!

Gutenberg 18.5 introduces several exciting features, enhancements, and some bugbug A 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. fixes. Some of the highlights of this release include better tools for section styling, providing more customization options for your sections, a new Custom Shadows feature which improves the control over our shadows, and also the ability to edit a blockBlock Block 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.’s custom fields directly in the block itself, thanks to the latest additions to the Block Bindings APIAPI An 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..

Additionally, this release supports copying custom CSSCSS Cascading Style Sheets. between variations, relative theme path URLs for background images in theme.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML., and improved consistency in root padding across blocks.

  1. Section Styling with Extended Block Style Variations
  2. Custom Shadows!
  3. Block Bindings: Edit in Post Meta Source
  4. Other Notable Highlights
  5. Changelog
  6. First time contributors
  7. Contributors

Section styling with extended block style variations

From the Dev Notedev note Each important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. draft:

Section-based styling has been enabled by extending the existing Block Styles feature (aka block style variations) to support styling inner elements and blocks. These enhanced block style variations can even be applied in a nested fashion due to uniform CSS specificity (0-1-0) for Global Styles, which will be introduced in WordPress 6.6.

In addition block style variations can now be:

  • Registered across multiple block types at the same time
  • Defined via multiple methods; theme.json partials, within theme style variations, or by passing a theme.json shaped object in the style’s data given to existing block style registration functions
  • Customized via Global Styles

Read more.

Custom shadows!

The new Custom Shadows feature allows for the creation and editing of shadows within Global Styles. Users can now add depth and visual interest to their site elements with more nuanced shadow effects.

Block Bindings: allow editing post metaMeta Meta 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. directly in blocks

Using the latest changes to the Block Binding API, this change means that we can now edit the value of custom fields directly through the blocks when they are connected to those fields. For example, when a paragraph block’s content is bound to a custom fieldCustom Field Custom Field, also referred to as post meta, is a feature in WordPress. It allows users to add additional information when writing a post, eg contributors’ names, auth. WordPress stores this information as metadata. Users can display this meta data by using template tags in their WordPress themes., the user can edit the custom field value by editing the block content.

Other Notable Highlights

  • Copy custom CSS between variations when switching (61752)
  • Support Relative Theme Path URLs for Background Images in theme.json (61271)
  • Improve Consistency in Root Padding Across Blocks (60715)

Changelog

Features

Global Styles

  • Add defaultSpacingSizes option (theme.json v3). (61842)
  • Edit/create shadows in global styles. (60706)
  • Relocate Background Image controls to sit under Layout. (61886)

Block Library

  • Enable shadow support for cover block. (61883)

Block bindings

  • Allow editing in post meta source. (61753)

Script Modules API

  • Add script module data implementation. (61658)

Synced Patterns

  • Add __default binding for pattern overrides. (60694)

Block Styles

  • Extend block style variations as mechanism for achieving section styling. (57908)

Enhancements

  • Block card: Fix typographic widow. (61438)
  • Block settings: Update variant of “Apply globally” Button component to secondary. (61850)
  • Editor: Align the Post Format control design with the rest of the post sidebarSidebar A 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. controls. (62066)
  • Editor: Polish the style of some of the post summary rows. (61645)
  • Format Library: Refactor ‘Inline Image’ edit component. (62135)
  • Playwright end-to-end Utils: Add fullscreenMode option to createNewPost. (61766)
  • Post Sticky Toggle: Improve the design. (62012)
  • Post Summary: Move PostTemplatePanel below URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org and Author. (62137)
  • Remove trashTrash Trash in WordPress is like the Recycle Bin on your PC or Trash in your Macintosh computer. Users with the proper permission level (administrators and editors) have the ability to delete a post, page, and/or comments. When you delete the item, it is moved to the trash folder where it will remain for 30 days. button in post/page inspector. (61792)
  • Shadows instead of borders on interface skeleton. (61835)
  • Tweak contextual block toolbar position. (61836)
  • Update: For synced entities the icon should be purple. (62024)
  • Update: Implement new author panel design. (61362)
  • Update: Implement new parent and order design. (61918)
  • Update: Move duplicate pattern and template part actions to the editor package. (61879)

Site Editor

  • Block Editor: Check for multiple block usage in the block-editor package. (62086)
  • Copy custom CSS between variations when switching. (61752)
  • Data views: Align page headers. (62115)
  • Inspector summary rows: Make tooltips appear middle-left. (61815)
  • Inspector: Add ‘/’ prefix to Link button. (62073)
  • Inspector: Display home / posts page badge. (62071)
  • Inspector: Remove revisionsRevisions The 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. panel. (61867)
  • Make post meta row button treatment consistent. (61954)
  • Remove ‘Manage…’ prefix in Pages / Templates data views. (62107)
  • Remove the details pages. (61741)
  • Update actions order in site editor for template and template parts. (61803)
  • Use site title as a link. (61258)
  • [Site Editor]: Add create pattern button in patterns page. (60302)
  • withRegistryProvider: Prevent intermediate state with no children. (61859)

Data Views

  • Add badge to title for posts & front pages. (61718)
  • Clarify date value in Pages. (61709)
  • DataViews: label prop in Actions API can be either a string or a function. (61942)
  • Fix pagination position on pages with short lists. (61712)
  • Pages data view: Add Pending and Private views. (62138)
  • Pages sidebar: Adds published & scheduled items. (62021)
  • Stop Patterns data view headerHeader The 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. shrinking. (61801)
  • Update grid layout on small screens. (61820)
  • Update list layout action styling. (61797)
  • Update page component (and some data view elements) spacing metrics. (61333)
  • Visually hide ‘Actions’ column header. (61710)

Global Styles

  • Add block-level Text Alignment UIUI User interface. (61717)
  • Add option to remove site-wide theme background image. (61998)
  • Background image: Add support for relative theme path URLs in top-level theme.json styles. (61271)
  • Background image: Update controls defaults and layout. (62000)
  • Background images: Add defaults for background size. (62046)
  • Don’t filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. out typography variations where the heading and body fonts are the same. (61327)
  • Make color variations fit in a bit better visually. (61617)
  • Make it clearer how to edit a site’s palette. (61364)
  • Move type presets below elements. (61863)
  • Restore the default variation to the color and typography style tiles. (61901)
  • Show shadow tool by default under global styles. (61981)

Components

  • Add vw and vh units to the custom font size picker. (60607)
  • CustomSelectControlV2: Use InputBase for styling. (60261)
  • Tabs: Indicator animation. (60560)
  • Try: Add CSS Custom Properties to CSS types. (61872)

Zoom Out

  • Hide inserters behind the experiment flag. (61866)
  • Inserter: Auto-close the inserter unless the zoom out experiment is on. (61856)
  • Show the inserters only when a section is selected. (61559)
  • The patterns tab behind a new experiment. (61601)

Block Editor

  • Adjust pattern list items resting, hover, focus styles. (61831)
  • Tweak pattern categories sidebar. (62113)
  • Writing flow: Remove first empty paragraph on Backspace. (61889)

Block bindings

  • Add Block Bindings Panel to Block Inspector. (61527)
  • Add indicator for metadata changes to Save Panel when reviewing modified entities. (61811)
  • Lock binding editing with functions. (61734)

Block Variations

  • Detect active variation correctly based on RichText attribute. (62325)
  • Have getActiveBlockVariation return variation with highest specificity. (62031)
  • Support dot notation in isActive string array. (62088)

Layout

  • More consistent root padding. (60715)
  • Try using coloured overlay instead of border for grid visualiser. (61390)

Block Library

  • Added Bluesky icon to the Social Icon Block. (61372)
  • Media & Text: Replace the deprecated __experimentalImageSizeControl with ResolutionTool. (57540)

Inspector Controls

  • Align both “Design” pattern list panels. (62161)

Post Editor

  • Add home template details to inspector controls. (61762)

Interactivity API

  • Clarify some warning messages. (61720)

Patterns

  • Adjust the icons and text of the binding connected blocks. (61560)

Bug Fixes

  • Editor: Only render the site logo once if there’s a fill. (62320)
  • Interactivity API: Increase directive wp-each-child priority. (62293)w
  • Compose: Fix ‘useFocusOnMount’ cleanup callback. (62053)
  • Do not auto save post status changes. (62171)
  • Editor: Fix canvas padding in post editor. (61893)
  • EntityProvider: Avoid remounts and simplify. (61882)
  • Fix shadow and border for pattern categories panel. (62158)
  • Image Block: Conditionally Render Block Control Based on Component Presence. (62132)
  • Interactivity API: Fix null and number strings as namespaces runtime error. (61960)
  • PostCardPanel: Fix ESLint error. (62109)
  • Remove build-types/ clean from clean:Packages. (62008)
  • Script Modules: Fix private method reflection access. (62154)
  • ServerSideRender: Fix data loading in development mode. (62140)
  • Shadow Panel: Make subtitle translatable. (62022)
  • Site Editor: Fix the Root Padding styles. (61906)
  • Writing flow: Fix heading crash on split (via paste). (61900)
  • e2e: Fix Site Editor Styles test. (62111)

Post Editor

  • Consolidate and fix delete and edit post actions. (61912)
  • Consolidate and fix rename post action. (61857)
  • Document Bar: Decode HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. entities and take into account cases where there is no title. (62087)
  • Editor: Don’t apply purple accent to the unsynced pattern title. (61704)
  • Editor: Ensure Copy button in sidebar copies whole permalink, with URL protocol. (61876)
  • Editor: Fix the ‘DocumentBar’ position for long titles. (61691)
  • Editor: Render publish date control when the status is future(scheduled). (62070)
  • Editor: Unify button size in pre-publish panel. (62123)
  • Editor: Use edited entity for post actions. (61892)
  • Fix read only post status styles. (61722)
  • Post Actions: Hide the trash action for auto-drafts. (61865)

Block Editor

  • Inserter: Update Openverse API URLs. (62241)
  • Fix being unable to switch modes while inserter is open. (61563)
  • Fix editor inserter tabs indicator. (61973)
  • Fix positioning of close icons in panels to be consistent. (61832)
  • Fix syncing of publish date between publish and post status panel. (62165)
  • Improve link conrol preview when show button text label is enabled. (61726)
  • Inserter: Show all blocks (alternative). (62169)
  • InspectorControls: Text not displayed when “Show button text labels” is enabled. (61949)
  • Link Control: Fix focus handlers in development mode. (62141)
  • Media & Text block: Remove the link option when the featured imageFeatured image A featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts. is used. (60510)
  • Writing flow: Fix paste for input fields. (61389)

Block Library

  • Classic block: Fix content syncing effect for ReactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. StrictMode. (62051)
  • Don’t steal focus when opening browse all blocks. (61975)
  • Fix: The latest post block – post titles overlapping. (61356)
  • Fixed : Update alt text decision tree links to be translatable. (62076)
  • Fixed: Custom HTML Block should display content in LTR layout for all languages. (62083)
  • More block: Fix React warning when adding custom text. (61936)
  • useUploadMediaFromBlobURL: Prevent duplicate uploads in StrictMode. (62059)

Global Styles

  • Fix make dimensions.aspectRatios key of theme.json files translatable. (61774)
  • Hide the presets panel for when there are less or exactly one presets available. (62074)
  • Prevent Typography panel title from wrapping. (62124)
  • Shadow Panel: Generates unique shadow slugs by finding max suffix and incrementing it. (61997)
  • Styles: try wrapping with :Root to fix reset styles. (61638)
  • Transform Styles: Update selector so that styles work when custom fields panel is active. (62121)

Site Editor

  • Align the template title to the center in the ‘Add template’ screen. (62175)
  • Close publish sidebar if not in edit mode. (61707)
  • Fix the site editor Adminadmin (and super admin) Bar menu item. (61851)
  • Use a consistent snackbar position. (61756)

Components

  • Fix: The focus styles for tabPanel. (61317)
  • InputControl: Fix z-index issue causing slider dots to appear in front of the Appearance dropdown. (61937)
  • getAutocompleterUI: Don’t redefine ListBox component on every render. (61877)

Synced Patterns

  • Block Bindings: Filter pattern overrides source in bindings panel. (62015)
  • Fix detaching patterns when a pattern has overrides, but there are no override values. (62014)

Block bindings

  • Don’t show non-existing and not supported attributes in block bindings panel. (62183)

Layout

  • Remove extra bracket in the site editor root padding styles. (62159)

Block Styles

  • Fix block style variation styles for blocks with complex selectors. (62125)

Code Editor

  • Editor: Unify text/code editor between post and site editors. (61934)

Page Content Focus

  • Remove lock icons from Content blocks inner blocks when editing a page in the site editor. (61922)

Patterns

  • Templates: Only resolve patterns for REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. endpoints. (61757)

Interactivity API

  • Turn named capturing groups back into numbered ones inside toVdom. (61728)

Block API

  • Fix: Enable Text Align UI to be controlled correctly with theme.json. (61182)

REST API

  • Return an empty object when no fallback templates are found (wp/v2/templates/lookup). (60925)

AccessibilityAccessibility Accessibility (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)

Global Styles

  • Shadow Panel: Improve a11yAccessibility Accessibility (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) and fix browser console error. (61980)

Data Views

  • Always show Actions table header. (61847)

Block Library

  • Fix: Adds help props for description of Play Inline toggle. (61310)

Performance

  • Perf: Batch block list settings in single action. (61329)
  • Remove additional call to WP_Theme_JSON_Gutenberg::__construct. (61262)

Interactivity API

  • Introduce wp-on-async directive as performant alternative over synchronous wp-on directive. (61885)

Post Editor

  • DocumentBar: Only selected data needed for rendering. (61706)

Experiments

Interactivity API

  • Use output buffer and HTML tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) processor to inject directives on BODY tag for full-page client-side navigation. (61212)

Documentation

  • Add JSDoc to PostVisibility, PostVisibilityCheck, and PostVisibilityLabel. (61735)
  • Add PostURL component documentation. (61737)
  • Add a section about block filters to the Filters and HooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same. doc. (61771)
  • Add an example and improve readability of the Block Filters doc. (61770)
  • Add docblockdocblock (phpdoc, xref, inline docs) to PostTitle and PostTitleRaw component. (61740)
  • Add documentation for DocumentBar. (61733)
  • Add documentation for PostFeaturedImage, PostFeaturedImageCheck, PostFeaturedImagePanel. (61165)
  • Add documentation for PostLastRevision, PostLastRevisionCheck, PostLastRevisionPanel components. (61166)
  • Add documentation for PostSchedule, PostScheduleCheck, PostSchedulePanel, PostScheduleLabel, usePostScheduleLabel components. (61345)
  • Add documentation for the EditorNotices component. (61736)
  • Add documentation for the EditorProvider and ExperimentalEditorProvider components. (61739)
  • Added missing global documentation. (61537)
  • Changelog: Add note about removing legacy operators. (62013)
  • Docs: Fix spacing in PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher doc block in comments block. (61911)
  • EditorBoundary editor component. (61950)
  • Fix typo. (61830)
  • Fix: Block library README.md link. (62081)
  • Fix: Custom block editor link. (61962)
  • For PostTextEditor component. (62099)
  • LocalAutosaveMonitor editor component. (61951)
  • PageTemplate + PostTemplatePanel editor components. (61961)
  • PostComments editor component. (61964)
  • PostDiscussionPanel editor component. (61966)
  • PostExcerptPanel editor component. (61967)
  • PostLockedModal editor component. (61968)
  • PostPendingStatus + PostPendingStatusCheck editor components. (61970)
  • PostPingbacks editor component. (62035)
  • PostPreviewButton editor component. (62036)
  • Storybook: Add badges based on tags. (61111)
  • Update PostFormat, PostFormatCheck editor component documentation. (61732)
  • Update block.json file with correct links. (61880)
  • Update link to architecture key concepts. (61965)
  • Update links to correct lodash website. (62188)
  • Update pluginPlugin A 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-document-setting-panel.md. (61782)
  • Update tutorial.md. (62054)

Code Quality

  • Add curly brace autofix commit to .git-blame-ignore-revs. (62144)
  • Add eslint rule for curly brace presence in JSX. (62026)
  • Blocks: Remove pipe usage and dependency on compose. (62127)
  • Clean up packages build-types when cleaning types. (61939)
  • Command Palette: Remove unused URL parameter. (61783)
  • Commands: Unify the editor context between post and site editors. (61862)
  • Dataviews: Remove unused dependencies. (62010)
  • Distraction Free: Unify the header animation. (62167)
  • Editor: Move editor toggle commands to the editor package. (62093)
  • Editor: Move the InterfaceSkeleton to the editor package. (62118)
  • Editor: Move the resizing of the editor to the EditorCanvas component. (61896)
  • Editor: Remove extra div container and unify the container between post and site editors. (62016)
  • Editor: Remove obsolete listViewLabel prop from DocumentTools. (62032)
  • Editor: Remove useless props from InserterSidebar component. (62103)
  • Editor: Unify the MediaUpload hook between post and site editors. (62085)
  • Editor: Unify the content area of the post and site editors. (61860)
  • Fix: React compiler error on button. (61958)
  • Fix: Remove unused css block on patterns page. (62058)
  • Fix: Remove unused css code from the navigation screen. (62060)
  • Fix: Some jsdoc return types on edit site selector. (62061)
  • Improve distclean script. (62019)
  • Interactivity API: Move all utils inside utils.ts. (61721)
  • Interactivity API: Move init.js to TypeScript. (61723)
  • Make onPatternCategorySelection private. (62130)
  • Remove useless clsx calls. (61969)
  • Rename backportbackport A 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.-changelog/6279.md to backport-changelog/6.6/6279.md. (61894)
  • Update: Remove unused components. (61955)
  • end-to-end Tests: Fix React warnings triggered by test plugins. (61935)

Components

  • CustomSelectControl: Fix menuProps mutation. (62149)
  • Fix remaining warning in ColorPanelDropdown. (61933)
  • Make the ProgressBar public. (61062)
  • Remove reduceMotion utility. (61963)
  • SlotFills: Use state for registry initialization. (61802)
  • Style Book: Use state to initialize examples. (61848)
  • Tooltip: Fix Ariakit tooltip store usage. (61858)
  • ProgressBar: Simplify default width implementation and make it more easily overridable. (61976)

Block Editor

  • Fix ZoomOutModeInserters dependencies. (61908)
  • Fix wrapper props mutation in BlockListBlock. (61789)
  • Remove some utility functions. (61784)
  • Shadows: Unlock private components and hooks at the file level. (61790)
  • Unlock private setting keys at the file level. (61813)
  • Unlock the private ‘kebabCase’ function at a file level. (60755)
  • useBlockInspectorAnimationSettings: Remove unnecessary deps. (61822)

Data Views

  • DataViews: Full type the dataviews package. (61854)
  • DataViews: Remove non-used file. (61853)
  • DataViews: Remove unnecessary dependency for pattern fields memo. (61870)
  • DataViews: Type all the filters components. (61795)
  • DataViews: Type the BulkActionsToolbar component. (61673)
  • DataViews: Type the ViewActions component. (61729)
  • DataViews: Type the ViewTable component. (61682)

Block Library

  • Added unit testunit test Code 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. for post excerptExcerpt An excerpt is the description of the blog post or page that will by default show on the blog archive page, in search results (SERPs), and on social media. With an SEO plugin, the excerpt may also be in that plugin’s metabox. block render function. (43451)
  • Avoid using component naming conventions for non-component code. (61793)
  • Button: Fix ESLint warning. (62126)
  • Remove CSS hack for Internet Explorer 11. (62043)
  • Remove useless styles. (62017)
  • Search Block: Fix borderRadius mutation. (61794)

Site Editor

  • History: Add getLocationWithParams method. (61823)
  • Navigation Focus Mode: Remove leftover code. (61897)
  • Remove useless onClick handler. (61902)
  • Update to use the EditorInterface component from the editor package. (62146)

Block hooks

  • Navigation block: Check for insert_hooked_blocks_into_rest_response i…. (62134)
  • Navigation block: Check for update_ignored_hooked_blocks_postmeta in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. (61903)

Font Library

  • Font Library Modal: Remove some contexts. (62042)

Post Editor

  • Template Actions: Fix console error when resetting template. (61921)

Global Styles

  • Components: Fix React Warning triggers by the new JSX transform. (61917)

Interactivity API

  • Interactivity API : Refactor interactivity-router to TS. (61730)

CSS & Styling

  • Fix editor view mode canvas shadow. (61688)

Tools

  • Build: Use globalThis over process.env and enable TS lib checking. (61486)

Testing

  • E2E: Fix canvas waiter in visitSiteEditor. (61816)
  • PaletteEdit: Fix another flaky test. (61818)
  • PaletteEdit: Fix flaky test. (61791)
  • Shadow: Add unit tests for shadow support. (60063)
  • Skip flaky ‘Zoom out’ end-to-end test. (61925)
  • Synced Pattern: Wait for pattern creation in end-to-end tests. (62174)
  • Tests: Change how directives processing gets disabled. (62095)
  • Workflows: Try a backport changelog. (61785)

Build Tooling

  • Add 60 minute timeout to performance job. (61957)
  • Enable parallel processing for PHPCSPHP Code Sniffer PHP Code Sniffer, a popular tool for analyzing code quality. The WordPress Coding Standards rely on PHPCS. sniffssniff A module for PHP Code Sniffer that analyzes code for a specific problem. Multiple stiffs are combined to create a PHPCS standard. The term is named because it detects code smells, similar to how a dog would "sniff" out food.. (61700)
  • Fix an issue causing wp-scripts commands to fail if the file path contained a space character. (61748)
  • React: Upgrade to the new JSX transform. (61692)
  • Workflows: Test to check for label and skip backport changelog. (61808)

Various

  • Inserter: Encapsulate styles for tablist and close button. (61760)
  • Update ‘Add template’ screen to prefer template_name label instead of singular_name. (60367)
  • Update: Move pattern actions to the editor package. [take 2]. (61612)

Global Styles

  • Update copy for color variations from “Presets” to “Palettes”. (62147)

Synced Patterns

  • Remove IS_GUTENBERG_PLUGIN check to ensure pattern overrides ship in 6.6. (62011)

npm Packages

  • Packages: Increase the minimum required Node.js version to v18.12.0. (61930)

Layout

  • Update child layout selector to match core. (61777)

Components

  • Introduce Combobox expandOnFocus property. (61705)

First time contributors

The following PRs were merged by first time contributors:

  • @akashdhawade2005: Fix: Block library README.md link. (62081)
  • @amitraj2203: Added Bluesky icon to the Social Icon Block. (61372)
  • @dbrian: Add JSDoc to PostVisibility, PostVisibilityCheck, and PostVisibilityLabel. (61735)
  • @gemkev: Update tutorial.md. (62054)
  • @kellenmace: Fix an issue causing wp-scripts commands to fail if the file path contained a space character. (61748)
  • @narenin: Fixed: Custom HTML Block should display content in LTR layout for all languages. (62083)
  • @nateinaction: Add documentation for the EditorProvider and ExperimentalEditorProvider components. (61739)
  • @paolopiaggio: Playwright end-to-end Utils: Add fullscreenMode option to createNewPost. (61766)
  • @sanjucta: Add docblock to PostTitle and PostTitleRaw component. (61740)
  • @vipul0425: Fix: The latest post block – post titles overlapping. (61356)

Contributors

The following contributors merged PRs in this release:

@aaronrobertshaw @abhi3315 @afercia @ajlende @akashdhawade2005 @akasunil @Aljullu @amitraj2203 @andrewserong @anton-vlasenko @anver @artemiomorales @carolinan @cbravobernal @colorful-tones @creativecoder @DaniGuardiola @DAreRodz @dbrian @draganescu @ellatrix @fabiankaegy @fullofcaffeine @gemkev @geriux @glendaviesnz @gziolo @jameskoster @jasmussen @jeryj @jorgefilipecosta @jsnajdr @kellenmace @kevin940726 @kt-12 @madhusudhand @Mamaduka @mattsherman @mcsf @michalczaplinski @mirka @narenin @nateinaction @ndiego @ntsekouras @oandregal @ockham @paolopiaggio @ramonjd @retrofox @richtabor @sanjucta @SantosGuillamot @scruffian @senadir @shail-mehta @sirreal @stokesman @t-hamano @talldan @taylorgorman @tellthemachines @tjcafferkey @twstokes @tyxla @vcanales @vipul0425 @westonruter @WunderBart @youknowriad

Props to @annezazu, @gziolo, @aaronrobertshaw for their support in and @joen for his help with the post’s assets!

#block-editor, #core-editor, #gutenberg, #gutenberg-new

What’s new in Gutenberg 18.4 (22 May)

“What’s new in GutenbergGutenberg The 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.


Gutenberg 18.4 is ready and available for download!

This release includes 178 pull requests by 58 contributors. Look for improvements to the Grid blockBlock Block 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., a new handy keyboard shortcut, and useful features for extenders. Additionally, as always, a number of bugs, accessibilityAccessibility Accessibility (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) issues, and performance issues have been fixed.

Great work to all who contributed to Gutenberg 18.4, with special appreciation for the first-time contributors we had this release. Thank you!

Table of Contents

Visualize grid layouts

No longer an experiment, the grid layout visualization is now available to everyone! See outlines of the grid columns and rows, and use the drag handles to make content span across them. (#61640)

Group blocks with a keyboard shortcut

Many design tools provide shortcuts for grouping elements. Gutenberg has been missing this convenience since blocks could be grouped… until today. Now you can conveniently group all selected blocks with the ⌘ Command + G on MacOS or Ctrl + G on Windows. (#46972)

Define custom aspect ratio presets with theme.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML.

Tired of being stuck with the same standard aspect ratios for image cropping and layout? Now themes can define their own aspect ratio presets to use. (#47271)

Set new aspect ratios with the settings.dimensions.aspectRatios option in theme.json. As with other presets, the default options are always available by default. To remove them and use only your own, set the settings.dimensions.defaultAspectRatios option to false.

{
	"version": 3,
	"settings": {
		"dimensions": {
			"aspectRatios": [
				{
					"name": "Super Ultra-Wide - 32:9",
					"slug": "32-9",
					"ratio": "32/9"
				}
			]
		}
	}
}

Other notable highlights

For extenders needing more customizability than the BlockToolbar has to offer, you can use the newly exported BlockPopover component to easily create your own custom toolbar. (#61529)

For extenders replicating rich text pasting behavior in your own blocks, you now have access to a convenient supports.splitting block setting. When it is enabled and content is pasted inside the block, it will split your block in two, insert the content, and then merge the ends together. (#54543)

For theme developers, the list block now includes a wp-block-list class to allow styling the block separately from other lists. No more accidentally selecting too many things when styling list blocks. (#56469)

Changelog

View full list of changes

Enhancements

Layout

  • Check child layout exists before generating classname. (61392)
  • Hide Image block resizer when inside a grid layout. (61603)

Grid interactivity

  • Improve max attribute logic. (61420)
  • Improve how grid resizer handles 0-width and 0-height cells. (61423)
  • Show grid visualizer when block inspector is closed. (61429)
  • Stabilise grid layout visualiser and resizer. (61640)

Global Styles

  • Add aspect ratio presets support via theme.json. (47271, 61774)
  • Background images: Remove required “file” prop. (61387, 61469)
  • Change “Solid” tab to “Color”. (61366)
  • Improve panel title and description for palette. (61365)
  • Tweak palette panel spacing and empty message. (61368)
  • Update color variations. (61334)

Block Styles

  • Add extended version of register block style functions. (61029)

Post actions

  • Improve success messages of some post actions. (61539)
  • Unify the list of available post type actions. (61520)
  • Don’t export duplicatePostAction for now. (61407)

Zoom Out

  • Editor: Enable Zoom-out mode in the post editor. (61293)
  • Keep original viewport width (single scale). (61424)
  • Open inserter sidebarSidebar A 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. when clicking on inserter buttons on zoom-out mode. (61434)
  • Remove experimental zoom out control. (61509)
  • Zoomed Out View: Don’t close the inserter. (61004)

Components

  • Do not render FormTokenField label when not defined. (61336)
  • Placeholder: Tweak placeholder style. (61590)
  • Add content only descriptions in dropdown menus for patterns and templates. (61127)

Block Library

  • List Block: Add block class name to the list block. (56469)
  • Embeds Block: Add Bluesky variation. (61352)
  • Site Logo Block: Add setting labels via the ‘register_setting’ method. (61351)

Block Editor

  • Make BlockPopover component public. (61529)
  • Only add the selected pattern categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. in metadata during insertion. (61557)
  • Add a keyboard shortcut to create group from the selected blocks. (46972)
  • Enhance block outlines and selection interactions. (60757)
  • Tiny tweak to position close button properly in the inserter. (61461)

Editor

  • Editor: Unify HeaderHeader The 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. component. (61273)
  • Editor: Unify the sidebar between the post and site editors. (61507)
  • Editor: Update and simplify the Post Summary and Post Card section in the document sidebar. (61624)
  • Try: Improve date-wrapping in prepublish flow. (61490)
  • Update: Implement the new discussion panel design. (61357)

Post Editor

  • Add global styles to settings using existing context code. (61556)
  • Display a notice after moving a post into the trashTrash Trash in WordPress is like the Recycle Bin on your PC or Trash in your Macintosh computer. Users with the proper permission level (administrators and editors) have the ability to delete a post, page, and/or comments. When you delete the item, it is moved to the trash folder where it will remain for 30 days.. (61670)
  • Simplify Post Publish Flow status term. (61386)

Site Editor

  • Redirect /wp_template_part/all to /patterns. (61446)
  • Moves “Patterns” command to site editor main navigation. (61416)
  • Adds “Template Parts” command to site editor. (61287)
  • Show pin/unpin button on the site editor pluginPlugin A 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 sidebar. (61448)
  • Remove default entry into Navigation MenuNavigation Menu A theme feature introduced with Version 3.0. WordPress includes an easy to use mechanism for giving various control options to get users to click from one place to another on a site. focus mode but retain ability to access via “Edit”. (61275)

Data Views

  • Add bulk actions toolbar. (59714)
  • Align list and table layout visuals. (61157)
  • Add actions to list layout. (60805)
  • Make pattern preview click area larger. (61250)

Bug Fixes

Layout

  • Fix grid item resizing in non-iframed editor. (61636)
  • Fix resizing items to top and left with GridItemResizer. (60986)
  • Grid Visualizer: Fix grid item resizing in site editor. (61641)
  • Grid Visualizer: Fix resize not ending when mouse is released outside grid’s bounds. (61668)
  • GridItemResizer: Fix resizing when List View is open. (61643)
  • Only show grid resizer if grid block allows resizing on children. (61552)

Global Styles

  • Background image: Explicitly set background repeat value in user styles. (61526)
  • Background image: Size controls should show when an image is set. (61388)
  • Make sure to replace all instances of :Where(body) instead of just …. (61602)
  • Reduce specificity of global styles body margin reset rule. (61340)
  • Remove Post Template background override. (61545)

Patterns

  • Fix blocks in unsynced patterns can enable overrides. (61639)
  • Revert “Use contentOnly locking for pattern block, remove hard-coded block check in block inspector”. (61517)

List View

  • Account for text fields in shortcut handler. (61583)
  • Add a special case for shortcuts coming from modals. (61606)
  • Standardize List View feature name to use title case capitalization. (61535)

Zoom Out

  • Block editor: Scroll block into view on insert. (61418)
  • Fix double scrollbars in site editor with zoom out view enabled. (61548)
  • Fix zoom out UIUI User interface scale. (61265)
  • Add bottom and top inserters. (61473)
  • Add patterns loading state. (61513)
  • Don’t allow dropping outside section root. (61512)
  • Don’t select last block. (61484)
  • Pass the section root ID to the inserter. (61464)
  • Zoom-out: Fix iframeiframe iFrame 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. ref error. (61200)

Components

  • Fix inconsistent complementary header styles. (61331)
  • Fix sticking “Reset” option in ToolsPanel. (60621)
  • RadioControl: Fix shrinking radio controls. (61476)

Block Library

  • Navigation Block: Add list item wrapper to social links when used in navigation block. (61396)
  • HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. Block: Remove font weight on toolbar tab button – #61254. (61308)
  • Time to Read Block: Fix “this block has encountered an error” – #61459. (61614)
  • Image Block: Enable crop action when image has a link. (61470)
  • ShortcodeShortcode A shortcode is a placeholder used within a WordPress post, page, or widget to insert a form or function generated by a plugin in a specific location on your site. Block: Fix layout margin override. (55028)

Block Editor

  • Editor styles: Fix cache (by wrapper selector). (61397)
  • Fix Truncate component for long unbreakable text. (61137)
  • Fix focus loss due to filtering blocks. (61558)
  • Fix: The issue of appender button not clickable in row/stack group. (61585)
  • Writing Flow/Rich Text: Unify split logic. (54543)

Post Editor

  • Fix the ‘usePaddingAppender’ error. (61500)
  • Return an empty object when no fallback templates are found (wp/v2/templates/lookup). (60925)

Site Editor

  • Fix user capabilities check for the Site Editor. (61444)
  • Preserve the wp_theme_preview query arg when navigating in Site Editor. (61394)
  • Trigger sidebar animations only on cross-route navigations. (61402)
  • Site Editor: Restore the hover zoom effect when hovering the editor frame. (61647)

Widgets Editor

  • Hide the close button on the inserter for widgets editor. (61510)

Data Views

  • Fix regressionregression A software bug that breaks or degrades something that previously worked. Regressions are often treated as critical bugs or blockers. Recent regressions may be given higher priorities. A "3.6 regression" would be a bug in 3.6 that worked as intended in 3.5. on keyboard navigation. (61478)
  • Improve dataview types. (61586)

Interactivity APIAPI An 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.

  • Interactivity API: Allow multiple event handlers for the same type with data-wp-on-document and data-wp-on-window. (61009)
  • Interactivity API: Prevent empty namespace or different namespaces from killing the runtime. (61409)
  • Interactivity API: Prevent wrong written directives from killing the runtime. (61249)

Accessibility

Components

  • ComboboxControl supports disabled items. (61294)
  • Remove usage of aria-details from InputControl and BaseControl. (61203)

Block Library

  • Fix the RRS block placeholder labeling and improve spacing. (61576)

Block Editor

  • Focus currently selected block when entering canvas. (61472)
  • Focus inserter toggle when closing the inserter sidebar. (61467)
  • Inserter: Add close button. (61421)

Post Editor

  • Post Actions: Correctly disable dropdown trigger. (61625)

Performance

  • Calculate and report quartiles in performance results. (60950)
  • Refactor InserterTabs to use children and remove re-memoizing. (61295)
  • Tests: Improve collection and reporting. (61450)
  • Performance tests: Fix results file path. (61686)
  • Revert “useBlockSync: Remove isControlled effect”. (61480)

Documentation

  • Update old document URLs to new ones. (61595)
  • Add a section about block_editor_settings_all to the Filters and HooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same. doc. (61597)
  • Add link to VS Code Playwright Extension. (61505)
  • Added check for duplicated slugs during manifest.json generation. (61332)
  • Block Editor: Remove multiline prop from Richtext doc. (61592)
  • Docs: How-to Guides > MetaMeta Meta 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 – Update metabox.md. (61314)
  • Docs: Interactivity API – Add viewScriptModule as a requirement to work with the Interactivity API. (61355)
  • Docs: Interactivity API : New pages – About and FAQ. (61323)
  • Docs: Interactivity Api – Small fixes. (61403)
  • Docs: Remove list of keyboard shortcuts from FAQ page. (61591)
  • Docs: Update theme-json-living.md to fix little issue. (61354)
  • Fix WP versions for theme.json v3 migrationMigration Moving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. in inline documentation. (61328)
  • Several Typo Correction in Inline doc. (61379)
  • Small fixes as per feedback received. (61445)
  • Theme.json: Update schema with working create theme link. (61306)
  • Update wordpress/a11yAccessibility Accessibility (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) README.md. (61635)
  • Update Node.js requirement in create-block docs. (60962)
  • Update and restructure the Editor Hooks doc. (61596)
  • Updated links to developer resources on README.md. (61525)
  • theme.json schema: Remove duplicate key. (61523)
  • Several Typo Corrections in Inline Documentations. (61662)

Code Quality

  • PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher load: move rest template controller 6.6 import to “REST” area. (61564)
  • Replace classnames with clsx. (61138, 61380)

Block Bindings

  • Remove not needed breaks in gutenberg_block_bindings_replace_html. (61660)
  • Simplify the HTML replacement logic until the HTML API is ready. (61236)

Patterns

  • Pattern overrides: Use block binding editing API. (60721)

Components

  • Assess stabilization of Theme. (61077)
  • Upgrade @types/reactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. package and @types/react-dom. (60796)
  • Fix problem with gradient-parser types. (61679)

Block Editor

  • Improve LineHeightControl unit tests. (61337)

Editor

  • Move the starter template options to the editor package. (61665)

Post Editor

  • Edit post: Do not consider sidebars mutually exclusive. (61468)
  • Editor: Move the sidebar component to the editor package. (61497)

Site Editor

  • Site Editor sidebar: Provide explicit backPaths, remove the getBackPath helper. (61286)

Data Views

  • Expand typing more components. (61654)
  • Add end-to-end tests for keyboard interactions in DataViews ListView. (61648)
  • Add types to the ViewGrid component. (61667)
  • Type the BulkActions component. (61666)
  • Type the ItemActions component. (61400)
  • Type the ViewList component. (61246)
  • Remove onActionPerformed & onActionStart from the ActionModal API. (61659)

Interactivity API

  • Add types for warn helper. (61687)
  • Enable strict type checking. (59865)

Tools

Testing

  • Convert FocalPointPicker tests to TypeScript. (61373)
  • E2E: Fix artifacts handling in CI. (61338)
  • Interactivity API: Fix flaky tests for attribute hydration. (61615)
  • Lightbox UI block override tests. (61414)
  • Playwright Utils: Silence some of the warnings coming from Firefox. (61451)
  • Test: Fix failing style linting error. (61649)
  • Tests: Fix flaky interactivity deferred test. (61359)

Build Tooling

  • Add stylelint rule to disallow the order CSSCSS Cascading Style Sheets. property. (61243)
  • Enforce @since tags in /packages/block-serialization-default-parser/ and other files. (60007)
  • Bug: False positives for react-hooks/exhaustive-deps. (61599)
  • Scripts: Add RTLCSS to wp-scripts. (61540)
  • WP-ENV: Fix return type and tests. (61631)
  • Create Block: Match specified engines with Gutenberg and CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. (61430)
  • Set prefer-dedupe as the default. (61630)
  • build: Suggest workaround if tsc --build fails. (61501)
  • build:package-types: Run silently to reduce user confusion. (61530)
  • GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ Actions: Fix PHP file change detection filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. pattern. (61183)
  • Dedupe packages. (61532)
  • Patchpatch A special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing. react-autosize-textarea for updated types. (61570)
  • Upgrade @use-gesture/react. (61503)
  • Upgrade framer-motion. (61572)

First time contributors

The following PRs were merged by first time contributors:

Contributors

The following contributors merged PRs in this release:

@aaronrobertshaw @afercia @ajlende @amitraj2203 @anton-vlasenko @artemiomorales @bacoords @carolinan @cbravobernal @colinduwe @DaniGuardiola @DAreRodz @desrosj @draganescu @ellatrix @fullofcaffeine @geriux @getdave @gigitux @hbhalodia @jameskoster @jasmussen @jeryj @jffng @johnhooks @jorgefilipecosta @jpstevens @jsnajdr @juanmaguitar @kevin940726 @kovshenin @MaggieCabrera @Mamaduka @mcsf @mrmurphy @ndiego @noisysocks @ntsekouras @oandregal @ramonjd @retrofox @richtabor @ryelle @SantosGuillamot @scheinercc @scruffian @shail-mehta @sirreal @stokesman @StyleShit @swissspidy @t-hamano @talldan @tellthemachines @tyxla @vipul0425 @WunderBart @youknowriad

#block-editor, #core-editor, #gutenberg, #gutenberg-new

What’s new in Gutenberg 18.3? (8 May)

“What’s new in GutenbergGutenberg The 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.


Gutenberg 18.3 has been released and is available for download!

A special welcome to three new first time contributors!

The latest release includes 157 pull requests from 44 contributors, and generally focuses on polishing features, and addressing bugs. Significant activity has also been directed towards improving documentation and code quality.

In this issue:

Full page client-side navigation experiment

As part of continuing to bring a single page application experience to WP sites, this change enables an experimental setting for whole-DOM-replacement on the client navigating between different pages without the need for a full page refresh.  Previously this was only available for region-based replacement. (#59707)

Allow negative values for margin controls

Negative margin values can now be added directly in the editing experience, resolving a longstanding feature requestfeature request A feature request should generally begin the process in the ideas forum, on a mailing list, as a plugin, or brought to the attention of the core team, such as through scope meetings held for each major release. Unsolicited tickets of this variety are typically, therefore, discouraged. and matching the current theme.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. support. This expands the design options for users leveraging the Editor. (#60347)

Add defaultFontSizes option to theme.json (incrementing theme.json to v3)

A previous attempt at adding the ability to add a defaultFontSizes option to theme.json didn’t stick (#56661) and this change reintroduces that ability.  Because the default behavior of overriding font sizes has changed this has caused the version of theme.json to increment to version 3.  (See this comment for more details.) Now defaultFontSizes can be set to false in theme.json to disable showing the default font sizes supplied from Gutenberg. (#58409)

Add publish flow in site editor

This continues the work on unifying the publishing flow between post and site editors and adds to the site editor the publish/save button that is used in post editor. This means we have the same publishing flow between the two editors. (#61136)

Other Notable Highlights

  • The Zoom Out Mode got some love:
    • Insert patterns at the end of the root section (#60855)
    • Make the zoom out inserters work for sections inside the section root (#60909)
    • Don’t show appender at all inside sections on zoom-out mode (#60948)
    • Drop patterns and blocks between sections only in zoom out mode (#60828)
  • In the Post Editor we moved around word count, post status and last edited info in page summary (#61235)
  • Bumped the required WordPress version to 6.4 and tested up to to 6.5. (#60780)

Changelog

Full changelog Available

Enhancements

  • Output post classes in the editor. (60642)
  • Abstract keyboard shortcuts for heading to paragraph transform and vice-versa. (60606)
  • Capitalize more occurrences of Navigation MenuNavigation Menu A theme feature introduced with Version 3.0. WordPress includes an easy to use mechanism for giving various control options to get users to click from one place to another on a site.. (60747)
  • Clean up top toolbar to use same metrics as blockBlock Block 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. toolbar. (61126)
  • Update template and template parts labels. (61146)
  • Update the template preview menu item text in the Template option. (57802)
  • Upgrade ReactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. to v18.3. (61202)

Site Editor

  • Add PluginDocumentSettingPanel in template inspector controls. (60961)
  • Add publish flow in site editor. (61136)
  • Classic Theme: Expose new Patterns page and remove Template Parts submenu. (61080)
  • Consolidate editor/canvas resize handles. (60712)
  • Patterns data view: Remove icons in favor of dedicated sync status field. (60833)
  • Patterns: Remove “Manage all parts” page & link. (60689)
  • Tweak Template/Template Parts/Page creation modal. (61005)
  • Drop patterns and blocks between sections only in zoom out mode. (60828)
  • Insert patterns at the end of the root section. (60855)
  • Typography Panel: Use simple labels. (60886)
  • Font Library: Convert heading text to heading elements and group fonts as a list. (58834)

Block Editor

  • Add new TextAlignmentControl component. (60841)
  • Editor: Sort style overrides by block client ids. (61039)
  • Inserter: Bail early when a user has no permission to upload media. (60983)
  • List View: Use ‘isMatch’ for unselect the shortcut. (61223)
  • Move search into inserter tabs. (61108)
  • Polish Autocomplete popover. (60131)

Global Styles

  • Add scoping of feature level selectors for custom block style variations. (61033)
  • Allow negative values for margin controls. (60347)
  • Allow opt out of certain sets of styles in the editor. (61035)
  • FilterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. out color and typography variations. (60220)
  • Update utils for scoping CSSCSS Cascading Style Sheets. selectors. (61026)
  • Add defaultFontSizes theme.json (theme.json v3). (58409)

Block Library

  • Group: Remove hardcoded Group block example styles. (61027)
  • Remove Button component from social link block, replace with button element. (61270)
  • List View: Unify shortcut handlers. (61130)
  • Update list view spacing. (60713)

Post Editor

  • Editor: Move around word count, post status and last edited info in page summary. (61235)
  • Editor: Update post excerptExcerpt An excerpt is the description of the blog post or page that will by default show on the blog archive page, in search results (SERPs), and on social media. With an SEO plugin, the excerpt may also be in that plugin’s metabox. panel with new designs. (60894)
  • Add duplicate post action. (60637)
  • Make duplicate post action available only on the pluginPlugin A 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 for now. (61192)

Data Views

  • Unbox items in grid layout. (61159)
  • Update alignment of preview contents in Patterns and Templates data views. (61190)

Components

  • ComboboxControl: Simplify string normalization. (60893)
  • Update help text alignment in CheckboxControl. (60787)
  • RangeControl: Remove deprecated reducedMotion util. (61119)
  • components – inputStyleNeutral: Remove deprecated reducedMotion util. (61122)

Bug Fixes

  • Editor: Do not show scrollbars when closing sidebars. (60889)
  • Fix block tab spacing when few available blocks. (61296)
  • Fix pattern preview focus styles. (60881)
  • Fix styles panel headerHeader The 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.. (61319)
  • Fix typo in clear customizations text. (61089)
  • Fix: Missing format, categories, and tags on the duplicate post action. (61194)
  • Fix: Post actions in post card panel is not checking for eligibility. (60994)
  • Notices: Fix snackbar placement. (60912)
  • Setup Node action – Set arch for key value. (61010)
  • docgen: Fix qualified types with type parameters. (61097)
  • Background image: Tools panel shouldn’t show reset button for inherited values. (61304)
  • Fix template files query by post-type. (61244)
  • Remove unnecessary period in template block selection notice. (61087)
  • Fix issue where pattern override values reset when saving. (61023)
  • Blocks: Merge variations bootstrapped from a server with the client definitions. (60832)
  • Bump minimum required WordPress version to 6.4. (60780)

Site Editor

  • DocumentBar: Account for when top toolbar is open. (61118)
  • Don’t show appender at all inside sections on zoom-out mode. (60948)
  • Editor: Avoid triggering the start page modal on unsaved pages. (61082)
  • Fix zoom out mode background color on Safari. (60873)
  • Fix: Pattern details page backpath. (61174)
  • Make the zoom out inserters work for sections inside the section root. (60909)
  • Select last section if parent section doesn’t exist. (61002)

Components

  • Box Control: Fix issue with negative values. (60984)
  • Fix usages of uSES with missing getServerSnapshot. (60943)

Block Library

  • Avoid unnecessary heading level and paragraph transform via keyboard shortcuts. (60955)
  • Navigation: Remove unnecessary __experimentalStyle. (60965)

AccessibilityAccessibility Accessibility (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)

  • Add aria-haspopup=”dialog” to Enable/Disable overrides button. (61309)
  • Fix unlabeled PostURL Copy button. (61195)
  • [Data Views] User patterns: Use excerpt as description. (60549)

Performance

  • Block lib: columns: Remove store subs on mount. (61123)
  • Block: Remove outline related store selecting. (61139)
  • Rich text: Combine all ref effects. (60936)
  • Template lock: Batch block disabling. (60934)
  • useBlockSync: Avoid replacing blocks twice on mount. (60967)
  • useMatchMedia: Cache queries. (61000)
  • ListViewBlock: Combine ‘useSelect’ hooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same., part two. (61054)
  • Remove showFixedToolbar from useShowBlockTools. (60717)
  • Editor: Optimize some of the post-support panels. (61003)
  • CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. data: getEditedEntityRecord: Do not return empty object. (60988)
  • Drop zone: Avoid media query on mount. (60546)
  • Nav link: Use rich text value. (60503)

Experiments

Interactivity APIAPI An 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.

  • Add full page client-side navigation experiment setting. (59707)

Documentation

  • Add AutosaveMonitor component JSDoc enhancements. (60905)
  • Add Documentation for CharacterCount component. (60906)
  • Add EditorSnackbars component documentation. (61110)
  • Add documentation for DocumentOutline and DocumentOutlineCheck components. (61129)
  • Add documentation for EditorHistoryRedo and EditorHistoryUndo. (60932)
  • Add documentation for EditorKeyboardShortcuts and EditorKeyboardShortcutsRegister. (60933)
  • Add documentation for PostAuthor, PostAuthorCheck, PostAuthorPanel components. (61090)
  • Added doc for components PageAttributesCheck, PageAttributesPanel, PageAttributesOrder, PageAttributesParent. (60977)
  • Change the name of the Interactivity API quick start guide markdown file. (61198)
  • Docs: Fix import statement of PluginMoreMenuItem. (60931)
  • Docs: Handle “oneOf” in theme.json schema doc generation. (61024)
  • Fix import in block editor’s readme example. (61218)
  • Fix use local version of theme.json schema in bundled files. (61312)
  • FontSizerPicker: Improve documentation for default units. (60996)
  • InputControl: Added password visibility story. (60898)
  • Move iAPI documentation from package to reference guides. (61143)
  • Refresh the folder structure documentation page. (60953)
  • Small-typo-change. (61178)
  • Theme JSON: Backportbackport A 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. PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher annotations from Core. (61301)
  • Update an anchor link in block-in-the-editor.md. (59527)
  • Update block-deprecation.md. (60768)
  • Update documentation for theme.json version 3. (61221)
  • Update main readme file with relevant current information. (60942)

Code Quality

  • DataViews: Enable types. (61185)
  • Editor: Cleanup edit-post classnames and documentation. (61240)
  • Editor: Consistently deprecate edit-post and edit-site slots. (61134)
  • Editor: Unify the BlockContextualToolbar component between post and site editors. (61104)
  • Editor: Unify the more menu. (60910)
  • Editor: Unify the region navigation keyboard shortcuts. (60907)
  • Fix: Actions moved to the editor package still reference edit-site on their ids. (60899)
  • Remove unnecessary usesContext from paragraph block. (61008)
  • Removed Extra Space Before Since. (60918)
  • ToolsMoreMenuGroup: Remove form post editor. (61132)
  • Unify placeholders. (59275)
  • Use math.div for scss division. (61285)
  • useBlockProps: Remove dead code. (61133)
  • useBlockSync: Just testing without isControlled effect. (61114)
  • Add eslint autofix commit to ignored git commits. (61253)
  • Rephrasing for accuracy and link to Core TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. ticketticket Created for both bug reports and feature development on the bug tracker.. (61284)
  • Blocks: Add a warning when registering variation without a name. (61037)
  • DataViews: Cleanup unused type property. (61197)
  • DataViews: More dataviews types. (61193)
  • Quality: Fix php warning error. (61321)
  • UseLocation instead of window.location.href. (61230)
  • Use contentOnly locking for pattern block. (61227)
  • Editor: No need to memorize callback in ‘SwapTemplateButton’. (61049)
  • Improve data-wp-context debugging by validating it as a stringified JSON Object. (61045)
  • Theme JSON: Extract util to get valid block style variations. (61030)
  • Elements: Deprecate old block support filter callbacks. (59538)

Components

  • AlignmentMatrixControl: Remove deprecated reducedMotion util. (61113)
  • FocalPointPicker: Remove deprecated reducedMotion util. (61116)
  • Navigation: Remove deprecated reducedMotion util. (61117)
  • Remove “experimental” designation for CustomSelectControlV2. (61078)
  • ToggleGroupControl: Remove deprecated reducedMotion util. (61120)
  • View: Fix TypeScript types. (60919)
  • components/elevation: Remove deprecated reducedMotion util. (61115)

Block Editor

  • Convert Media Inserter to Tabs Pattern. (60970)
  • Obviate mousetrap around Navigation Link popover. (61050)
  • editPost: Deprecate __experimentalPluginPostExcerpt. (61188)
  • editPost: __experimentalPluginPostExcerpt return <PluginPostExcerpt />. (61238)
  • useBlockRefs: Use more efficient lookup map, use uSES. (60945)
  • withBlockTree: Simplify code that replaces/removes controlled blocks. (61234)

Tools

  • ESLint Plugin: Handle multi-line translator comments. (61096)

Testing

  • Components: Fix snapshot tests of ToggleGroupControl. (61228)
  • Fix ESLint warning in Performance test files. (61311)
  • Hotfix: Fixed failing snapshot test. (61274)
  • Update 3rd party actions within composite action. (61211)

Build Tooling

  • Remove block-editor package usage from components. (60999)
  • lint-staged-typecheck: Don’t run TSC when no TS project is affected. (60998)

First time contributors

The following PRs were merged by first time contributors:

Contributors

The following contributors merged PRs in this release:

@aaronrobertshaw @afercia @ajlende @carolinan @cbravobernal @colorful-tones @DaniGuardiola @desrosj @draganescu @ellatrix @fabiankaegy @fullofcaffeine @geriux @huubl @itzmekhokan @jameskoster @jasmussen @jeryj @jorgefilipecosta @jsnajdr @juanfra @juanmaguitar @lanresmith @MaggieCabrera @Mamaduka @mirka @ntsekouras @oandregal @ockham @ramonjd @retrofox @richtabor @SantosGuillamot @scruffian @shail-mehta @sirreal @stokesman @sunil25393 @swissspidy @t-hamano @talldan @twstokes @tyxla @youknowriad

#block-editor#core-editor#gutenberg#gutenberg-new

#gutenberg-new

What’s new in Gutenberg 18.2? (24 April)

“What’s new in GutenbergGutenberg The 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 project (formerly called Full Site Editing).

Gutenberg 18.2 is ready and available for download!

The latest release includes 234 pull requests from 54 contributors, and generally focuses on polishing features, and addressing bugs. Significant activity has also been directed towards improving documentation and code quality.

We extend a warm welcome and thanks to four new first-time contributors! 🎉

Improve Pattern Overrides Experience

Gutenberg 18.2 refines the flow of turning pattern overrides on and off. It introduces a new DisallowOverridesModal for easier interaction. The solution removes complexity by focusing on a more intuitive workflow, including a modal confirmation when disallowing overrides and pre-populated names for quicker re-enablement. Through consistent interaction, we aim to simplify the user experience. (60769)

Enabling Template Preview in the Post Editor for Non-Administrators

We aim to enhance collaboration and flexibility in WordPress. By changing the rules for template previews, we now allow users with lower roles, like Editor, to view and switch between templates. This update resolves a previous issue by permitting non-administrators to see templates while editing content. (60447)

Site Editor: Support Starter Patterns

When creating a new post or page in the site editor, a modal window allows users to choose a pattern to kickstart their layout and design flow. This feature was previously only available in the post editor. (60745)

Simplify Template Reset Language

A frequent observation from previous outreach: 

Why are “clear customizations” for a template in a different place (in the title area) and named differently from “reset defaults” for styles?

The term “Clear customizations” was changed to “Reset,” with label updates to maintain consistency across the Site Editor and Command Palette. This change aims to improve clarity and reduce confusion for users performing template resets. The updated terminology aligns with other languages throughout the editorial experience, making the process more intuitive. (60256)

Other Notable Highlights

  • Animation improvements – subtle easing can make a huge impact
    • Adjust frame animation profile. (60589)
    • Animate the radius of the frame. (60415)
    • Improve the headerHeader The 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. animation. (60408)
    • Editor: Animate opening and closing editor right sidebarSidebar A 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.. (60561)
    • Editor: Animate the inserter and list view panels. (60665)
  • Post Editor: Update publish flow (60456)

Changelog

Full changelog available
  • Bump minimum required PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher version to 7.2 (60714)

Enhancements

Site Editor

  • Add rename and trashTrash Trash in WordPress is like the Recycle Bin on your PC or Trash in your Macintosh computer. Users with the proper permission level (administrators and editors) have the ability to delete a post, page, and/or comments. When you delete the item, it is moved to the trash folder where it will remain for 30 days. actions to page panel. (60232)
  • Adjust frame animation profile. (60589)
  • Animate the radius of the frame. (60415)
  • Create router adapter for sidebar. (60466)
  • Improve the header animation. (60408)
  • Index view for Templates & Parts: Use grid layout as default. (60069)
  • Pages: Display content frame in mobile when canvas is not edit. (60409)
  • Simplify template reset language. (60256)
  • Template parts in patterns page: Add author field. (60372)
  • Template parts: Set backpath to patterns page. (60667)
  • Update hub markup and animation. (60410)
  • Update site hub action positioning. (60511)

Components

  • CustomSelectControlV2: Support disabled in item types. (60896)
  • ExternalLink: Replace icon with unicode arrow. (60255)
  • InputBase: Simplify focus styles. (60226)
  • ProgressBar: Moved width to css var for perf. (60388)
  • SlotFill: Replace valtio with custom ObservableMap. (60879)
  • Tabs: Fallback to first enabled tab if no active tab Id. (60681)
  • Text: Add text-wrap: Pretty. (60164)
  • Try: Reduce checkbox size in data views. (60475)

Post Editor

  • Confirm dialog: Use more descriptive text for the confirm button. (60364)
  • Editor: Add wordcount and reading time info in post card. (60672)
  • Editor: Animate opening and closing editor right sidebar. (60561)
  • Editor: Animate the inserter and list view panels. (60665)
  • Editor: Update post URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org component. (60632)
  • Editor: Use the ‘ConfirmDialog’ component in template validation notice. (60385)
  • Enable template preview in post editor for non administrators. (60447)
  • Support insert before/after keyboard shortcuts when focus is within the list view. (60651)
  • Update publish flow. (60456)

Patterns

  • Add a “All Template Parts” section. (60775)
  • Back Compatback compat Backward compatibility - a desire to ensure that plugins and themes do not break under new releases - is a driving philosophy of WordPress. While it is a commonly accepted software development practice to break compatibility in major releases, WordPress strives to avoid this at all costs. Any backward incompatible change is carefully considered by the entire core development team and announced, with affected plugins often contacted. It should be noted that external libraries, such as jQuery, do have backward incompatible changes between major releases, which is often going to be a greater concern for developers.: Add Patterns submenu for WordPress 6.4. (60804)
  • Patterns page: Add edit & view revision actions to parts. (60659)
  • Remove “Template parts” sidebar group. (60359)
  • Site Editor: Support starter patterns. (60745)

Synced Patterns

  • Adjust allow pattern overrides UXUX User experience flow. (60769)
  • Consolidate “bound blockBlock Block 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.” color and “synced” colors. (60617)
  • Improve override indication for editable blocks in synced patterns. (60599)
  • Refine rename flow for blocks with overrides. (60234)

Zoom Out

  • Adjust block selection button. (60348)
  • Animation: Avoid fixed width when animating the secondary sidebar. (60693)
  • Introduce section container selection when assembling patterns (zoom out mode). (59249)
  • Update zoom out scale. (60618)

Block Library

  • Add loading state on image upload in featured imageFeatured image A featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts., Site logo and Cover blocks. (59519)
  • File: Use HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. APIAPI An 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. to update the PDF preview label. (60494)
  • Navigation block: Add current-menu-item class for post type archive. (57808)
  • Remove block renaming control from advanced inspector controls group. (60453)

Data Views

  • Add ability to display fields as a badge in grid layout. (60284)
  • Data views table row: Make checkboxes and actions visible on touch devices. (60829)
  • DataViews: Make the experiment about custom views. (60813)

Layout

  • Add a Row control to grid layout in manual mode. (60652)
  • Apply negative margins for alignfull children of blocks with custom padding set. (60716)
  • Try reducing specificity of layout style selectors. (60228)

Block Editor

  • Remove animation from InlineLinkUI. (60575)
  • Remove root appender. (60697)
  • Try: Add new textAlign block support. (59531)

Global Styles

  • Background image: Display default background size value in global styles. (60490)
  • Background UIUI User interface control labels. (60264)
  • Use text and button background color for color indicators. (59514)

Font Library

  • Change Spinner to ProgressBar component. (60570)

Interactivity API

  • Include preact/debug when SCRIPT_DEBUG is enabled. (60514)

New APIs

Extensibility

  • Editor: Support PluginPostStatusInfo Slot in the site editor. (60814)
  • Editor: Unify PluginMoreMenuItem API between post and site editors. (60778)
    • Fix: Use coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. instead of core/editor on normalizeComplementaryAreaScope. (60821)
  • Editor: Unify PluginSidebarMoreMenuItem. (60853)
  • Editor: Unify the PluginSidebar slot between post and site editors. (60815)

Bug Fixes

  • Fix: Add types to useSuspenseSelect. (60733)
  • Fix experimental useHasRecursion deprecation. (60451)
  • Fix translatable string in pagination modal. (60742)
  • Interactivity: Return useMemo and useCallback hooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same.. (60474)
  • Only show block icon in toolbar for contentOnly blocks when block is a synced block. (60647)
  • Patterns: Guard for unknown pattern in server-side resolver. (60464)
  • Snackbar: Make the explicitDismiss string translatable. (60368)
  • Update standardisation of ‘Navigation MenuNavigation Menu A theme feature introduced with Version 3.0. WordPress includes an easy to use mechanism for giving various control options to get users to click from one place to another on a site.’ to have both words capitalised in user-facing menus. (60262)
    • Standardise capitalisation of Navigation Menu in sidebar. (60527)

Block Library

  • Embed: Avoid retrying valid URLs. (60655)
  • File: Mark update for setting default label as non-persistent. (60492)
  • Fix don’t close overlay menu when focus leaves submenu. (60406)
  • Fix pattern block recursion handling. (60452)
  • Image: Fix cropper resize on align change (reactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/.-easy-crop upgrade). (60581)
  • Latest Posts: Remove wrapper div and apply consistent class. (60728)
  • List: Disable edit as HTML support. (55656)
  • Media & Text: Hide the alt text option for featured images. (60496)
  • Post title: Re-add the paragraph level (without UI). (60548)
  • Pullquote: Reduce specificity of padding rule to avoid conflicts with global styles. (60649)
  • Separator block: Reduce default border styles to avoid conflicts with global styles. (60740)

Site Editor

  • Chore: Fix missing comma on welcome guide styles. (60596)
  • Fallback to URL when site title is empty. (60885)
  • Fix activating a theme in site editor when previewing. (60699)
  • Fix site icon animation. (60419)
  • Fix small regressionregression A software bug that breaks or degrades something that previously worked. Regressions are often treated as critical bugs or blockers. Recent regressions may be given higher priorities. A "3.6 regression" would be a bug in 3.6 that worked as intended in 3.5. on the resize handle. (60427)
  • Fix the removePropertyFromObject function throws an error if the object is null. (60831)
  • Fix: Style issue on page actions button. (60592)
  • Pattern page: Fix deps for onActionPerformed useCallback. (60784)
  • Remove outdated border radius animation. (60454)
  • Router: Load proper sidebar for /wp_template. (60850)
  • [Site Editor]: Fix ability to edit trashed pages. (60236)

Post Editor

  • Editor: Do not render publish time and post status panels in design post types. (60857)
  • Editor: Fix post status label styles for low-capability users. (60854)
  • Fix display of shortcut to add non breaking space in the post editor. (60625)
  • Fix: Action button alignment on details panel. (60773)
  • Fix: Action order is different from inspector and dataviews. (60877)
  • Fix: Do not show pattern and template actions on the post editor. (60568)
  • Fix: Missing items parameter and or missing onActionPerformed calls. (60753)
  • Fix: Trash Post action and permanently delete post action do not show errors on single item. (60597)
  • Post Editor Header: Make block toolbar toggle button focus visible. (59781)

Block Editor

  • Avoid errors when a block variation icon is an object. (60766)
  • Fix external link indicator in Link Control. (60439)
  • Fix for isPossibleTransformForSource handling selecting inexistent block. (59410)
  • Fix stuck dragging mode in UI in Firefox when dealing with deeply nested lists. (60845)
  • Prevents delete key from undoing automatic changes. (60858)
  • Raw Handling – msListIgnore – Check attributes are valid. (60375)

Data Views

  • DataViews: Fix typing in combobox filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output.. (60819)
  • Fix default layout configuration in pages list. (60407)
  • Fix pattern titles. (60640)

Zoom Out

  • Don’t allow shuffle for locked patterns. (60381)
  • Prevent exiting Zoom Out mode from stealing focus. (60441)
  • Respect reduced motion when engaging zoom out mode. (60808)

Font Library

  • Avoid overriding custom settings on font library save. (60438)
  • Fix modal scrollbar. (60641)
  • I18Ni18n Internationalization, or the act of writing and preparing code to be fully translatable into other languages. Also see localization. Often written with a lowercase i so it is not confused with a lowercase L or the numeral 1. Often an acquired skill.: Add context to ‘Library’ string. (60520)

Components

  • Fix link control link preview when it displays long URLs. (60890)
  • ProgressBar: Fix CSSCSS Cascading Style Sheets. variable with invalidinvalid A 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. value. (60576)

Layout

  • Always add semantic classes. (60668)
  • Don’t output base flow and constrained layout rules on themes without theme.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML.. (60764)
  • Fix responsive column span logic on the front end. (60976)
  • Restore classic auto margin rule to its previous specificity. (60802)

Interactivity API

  • Allow multiple event handlers for the same type with data-wp-on. (60661)
  • Update the query block to permit non-core interactive blocks. (60006)

Templates API

  • Fix static posts page setting resolved template. (60608)
  • Fix: Honor ‘template_hierarchy’ filters on template fallbacks. (60377)

Distraction Free

  • Only show inserter in document tools if DFM is off. (60426)
  • Remove alpha from edit post header. (60431)

REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/.

  • Fix PHP notice triggered by ‘gutenberg_update_initial_settings’. (60862)

Global Styles

  • Editor styles: Delete duplicate backwards compat CSS custom properties. (60400)
  • Fix browser warning regarding highlight colors. (60555)

AccessibilityAccessibility Accessibility (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)

  • Details Block: remove overflow:Hidden style. (60270)
  • Do not render pattern aria description if not button is rendered. (60653)
  • Fix inserter pattern pagination focus loss. (60620)
  • Make sure Social icons links aren’t empty and improve UI clarity. (60047)

Performance

  • Add null check to prevent errors in get_block_template filter. (60491)
  • Block preview: Build in async rendering. (60425)
  • Editor canvas: Reduces resize listeners. (60682)
  • Layout support: Avoid two block editor store subs. (60612)
  • Optimize the rendering of the EditorStyles component. (60493)
  • Post Title: Avoid accidental types requests. (60531)
  • Preview: Skip rendering rich text. (60544)
  • Previews: Avoid unneeded block selectors. (60543)
  • Site Editor: Close the editor sidebar by default. (60820)
  • Zoom-out: Scale should be stable function. (60580)
  • getEntityRecords: Batch actions. (60591)

Block Library

  • Avoid calling getBlocks selector for navigation link blocks. (60458)
  • Image cropper: Remove clientWidth prop with useResizeObserver. (60674)
  • Navigation block: Avoid selector + style recalc on mount. (60572)
  • Pattern block: Avoid fetching all reusable blocks on mount. (60310)
  • Post Featured Image: Optimize store subscriptions. (60770)

Site Editor

  • Optimize the AddTemplate component used in data views pages. (60586)
  • Sidebar slide animation: Replace motion.div with CSS animation. (60849)

Documentation

  • Add AutosaveMonitor component JSDoc and populate README with auto-gen documentation. (60882)
  • Add documentation for disableLineBreaks property of RichText. (56284)
  • Added Documentation for PostExcerptCheck. (60864)
  • Added links to related components. (60726)
  • Correct link to the theme json reference. (60517)
  • DimensionControl: Fix story configuration. (60703)
  • Docs: Fix typos in interactivity API reference. (60870)
  • Docs: Update wording in Block Editor Handbook to reflect that all examples now use JSX. (56315)
  • Fix: Grammar typo on packages/dataviews/src/search-widget.js. (60588)
  • Fix: Link to the block building tutorial. (60518)
  • Fixes a link to the getEntityRecord documentation. (60823)
  • Improve documentation for block variation isActive property. (60801)
  • Update: Hardcoded documentation link to a branchbranch A directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch". that does not exist. (60671)
  • Update: Reference editor scope instead of edit-site, edit-post on interface package documentation. (60818)
  • [Create Block] Adding documentation for the transformer property. (60445)

Code Quality

  • Added @return after @global in php doc. (60611)
  • Blocks: Remove client-side polyfill for ‘selectors’. (60846)
  • [Block Bindings] Don’t use hooks. (60724)
  • Chore: Fix: Wrong JSDOC for an action return. (60786)
  • Chore: Simplify some CSS margin rules. (60816)
  • Editor: Serve as a proxy for the interface package. (60748)
  • Editor: Unify the auto-switch sidebars behavior. (60869)
  • Editor: Unify the keyboard shortcuts modal. (60866)
  • Editor: Unify the names of the sidebars between edit post and edit site. (60856)
  • Editor: Unify the preferences modal name. (60871)
  • Fix: Remove unused CSS for TemplatePartHint. (60852)
  • Fix: Remove unused css from page panels styles. (60774)
  • Fix: Font Library typo. (60751)
  • Fix: Remove unused CSS code from the site editor. (60662)
  • Interactivity API refactor to TypeScript (utils & kebabToCamelCase). (60149)
  • Reexport createSelector from data package. (60370)
  • Refactor: UseBlockTools cleanup. (59450)
  • Remove comment that no longer applies about appearance-tools support. (60844)
  • Reuse and unify post and page actions, accross the different use cases. (60486)
  • Test: Validate block & theme json. (57374)
  • Tests: Shard JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. unit tests. (60045)
  • Tests: Share JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/. build assets across PHP workflows. (60428)
  • Update: Avoid two useSelect calls on PostActions. (60752)
  • Update: Make content locking related selectors private. (60827)
  • Update: Move template actions to the editor store. (60395)
  • Update: Remove keyCode usage from dataviews package. (60585)
  • Update: Use util getVariationClassName instead of computing the variation inline. (60664)

Components

  • Deprecate reduceMotion util. (60839)
  • Navigation: Soft deprecate component. (59182)
  • NavigatorProvider: Move the same-location check to the goTo function. (60767)
  • ObservableMap: Optimize unsubscribe and add unit tests. (60892)
  • Remove CSS hack for Internet Explorer 11. (60727)

Post Editor

  • Editor: Optimize the ‘PostSlug’ component. (60422)
  • Editor: Use hook instead of HoC in ‘ThemeSupportCheck’. (60807)
  • Editor: Use hooks instead of HoCs in ‘PostTrashCheck’. (60380)
  • [Editor]:Get post content in PostContentInfo component. (60743)

Data Views

  • DataViews: Remove onDetailsChange event. (60387)
  • Rename displayAsColumnFields to columnFields API. (60504)
  • Simplify visually hidden label. (60835)

Block Editor

  • Refactor Link UI States. (59762)
  • Switching pattern categories inserter to Tabs component with arrow key navigation. (60257)

Tools

  • Update @talldan in codeowners file, remove from edit-widgets package. (60800)

Testing

  • Add end-to-end test for activating themes in site editor. (60707)
  • Automated Testing: Update end-to-end test npm commands. (60376)
  • Fix flaky Site Editor URL navigation end-to-end test. (60675)
  • PHP unit testunit test Code 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. workflow: Try removing 7.0 and 7.1. (60686)
  • Perf: Improve way we measure template loading by adding posts. (60516)
  • Performance Tests: I’m tired of doing head math 😊. (60509)
  • Upgrade Playwright to v1.43. (60635)
  • tip: Remove unecessary delay in tests except where needed. (60897)

Build Tooling

  • Dependencies: Upgrade babel. (57311)
  • Upgrade simple-git dependency. (59915)
  • Update Typescript to 5.4.5. (60793)

First-time contributors

The following PRs were merged by first-time contributors 👏

  • @asheshmagar 🏅 Font library: Fix typo. (60751)
  • @DaniGuardiola 🏅ProgressBar: Moved width to CSS var for performance. (60388)
  • @garridinsi 🏅 Interactivity API refactor to TypeScript (utils & kebabToCamelCase). (60149)
  • @xhemals 🏅 Update standardization of ‘Navigation Menu’ to have both words capitalized in user-facing menus. (60262), Standardise capitalization of the Navigation Menu in the sidebar. (60527)

Contributors

The following contributors merged PRs in this release:

@aaronrobertshaw @afercia @andrewserong @arthur791004 @artpi @asheshmagar @atachibana @carolinan @colinduwe @colorful-tones @DaniGuardiola @DAreRodz @draganescu @ellatrix @fabiankaegy @flexseth @garridinsi @geriux @getdave @ixkaito @jameskoster @jasmussen @jeryj @johnhooks @jorgefilipecosta @jsnajdr @kevin940726 @Mamaduka @matiasbenedetto @mhkuu @mikachan @mirka @noisysocks @ntsekouras @oandregal @ocean90 @okmttdhr @prajapatisagar @ramonjd @richtabor @ryanwelcher @scruffian @shail-mehta @shimotmk @simonhammes @sirreal @Soean @sunil25393 @t-hamano @talldan @tellthemachines @tyxla @xhemals @youknowriad

Props to @joen, @priethor and @bph for assisting with the preparation of this post and @vcanales, @mcsf, and @dmsnell for supporting me through my first Gutenberg release.

#block-editor, #core-editor, #gutenberg, #gutenberg-new

What’s new in Gutenberg 18.1? (10 April)

“What’s new in GutenbergGutenberg The 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 project (formerly called Full Site Editing).


What’s new in Gutenberg 18.1? (10 April)

Gutenberg 18.1 is ready and available for download!

With more than 150 pull requests (PRs), Gutenberg 18.1 is packed with features and bugbug A 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. fixes to suit all tastes — new pattern and template part insertion functionality, site backgrounds in global styles, accessibilityAccessibility Accessibility (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) and performance improvements.

Lovers of documentation and code quality enhancements will be pleased to learn that their favorite PRs make up almost a third of the total number in this release!

As always, a big thank you goes out to all who contributed, with special gratitude to first-time contributors. Great work!

In this issue:

Set site background images in the Site Editor

Set site background images in the Site Editor

Version 18.1 extends background image support to top-level global styles in the Site Editor, which means you can add custom background images and photos to sites. Images can set to repeat, or be displayed as contain or cover backgrounds. (#59454)

And for those wondering — yes, as well as regular images, looping animated gifs will also work.

See more with data views

New data views in the block editor for pages and patterns

Whether it’s sorting or searching your patterns in grid and table layouts (#60337), or filtering and previewing all of your sites pages (#59950), version 18.1 brings further design consistency to configurable adminadmin (and super admin) views, not to mention quicker access and management of site assets. 

Alongside the continuous integration into BlockBlock Block 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. Editor workflows, data views have undergone improvements to accessibility and keyboard navigation (#59637).

Pattern schema and insertion

Pattern insertion with zoomed out view

Pattern insertion gets an upgrade in the latest version of Gutenberg. The editor canvas will zoom out when browsing and inserting patterns using the block inserter, allowing a greater overview of how your patterns appear alongside the rest of your site’s content. (#59775

Patterns are a powerful way to define design assets with configurable content. You can now give your patterns a “schema” by naming blocks that are overridable in all instances of those patterns. Users of your patterns will be able to see exactly which blocks are editable via a handy list in the sidebarSidebar A 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.. (#59977)

Swap and edit template parts

Swapping template parts design in the Site Editor

When editing your site’s templates, you can select template parts and immediately view alternative designs for that template part in the sidebar. Want to replace your footer design? Click on your template’s footer and select a new one from the available designs. Voilà! (#60203)

Gutenberg has long had an option to preview a page’s template when editing that page. 18.1 lets you select and edit a page’s important template parts, such as the headerHeader The 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. and footer. To do so, click on a template part, then hit “Edit” in the toolbar. (#60010)

Other notable highlights

The editor displays a confirmation modal before clearing template customizations. (#60119

You can collapse non-selected items in the list view using a handy new keyboard shortcut (Option-L on Mac, or Alt-L on Windows). (#59978).

Changelog

View the full changelog

Enhancements

Block Editor

  • Zoom out: Invoke zoom out mode when opening the patterns tab, and move the code to do so to a shared hook. (59775)
  • Block Previews: Update shadows in different contexts. (60161)
  • Update: Move post actions to the editor package. (60092)
  • Try: Show copy shortcut in block options. (60339)
  • Update image role description text to fix spacing. (60338)

Site Editor

  • Add rename page action. (60230)
  • Center the document title. (59134)
  • Consolidate when showing revisionsRevisions The 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. link or action. (60194)
  • Editor: Update hover color of editor document title. (60113)
  • Improve the frame animation. (60363)
  • Try selecting closest editable block when clicking on a disabled block. (60016)
  • Update index view for pages. (59950)

Patterns

  • Add content schema to pattern editing view. (59977)
  • Close inspector on pattern categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. select. (60004)
  • Focus block selection button only in navigation mode. (60207)
  • Pattern Shuffling: Make the results deterministic. (60074)
  • Patterns page: Enable table layout. (60337)
  • Prevent reordering of header and footer template parts when zoomed out. (60054)
  • Remove manage all of my patterns link. (60345)

Block Library

  • Add __next40pxDefaultSize to Image block Title Attribute. (60117)
  • Add support “HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. Element” to Site Tagline. (59654)
  • Image: Remove temporary image check for rendering controls. (60212)
  • Quote block: Button for cite add/remove. (59073)
  • Quote block: Remove appender. (60307)
  • Reduce specificity of block library styles conflicting with block supports. (59457)
  • Update navigation blocks to use consistent link UIUI User interface labels and field sizes. (60116)
  • Summary: Polish featured imageFeatured image A featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts.. (60110)

Post Editor

  • Block Editor: Deprecate __experimentalGetReusableBlockTitle selector. (60278)
  • Editor: Move PluginPostPublishPanel and PluginPrePublishPanel to editor package. (60344)
  • Editor: Move publish panel handling to editor store. (60340)
  • Editor: Unify publish sidebar preference. (60334)

Global Styles

  • Add background to global styles changes output. (60229)
  • Background UI controls. (59454)
  • Follow up design tweaks for global styles presets. (60031)
  • Try reducing specificity of global styles selectors only. (60106)

Data Views

  • DataViews: Add a utility to share filtering, sorting and pagination logic. (59897)
  • Data views: Remove the enumeration type as redundant. (60084)
  • Data views: Update template actions. (60075)
  • Data views: Add confirmation modal for clearing customizations in templates. (60119)
  • Data views: Make trashTrash Trash in WordPress is like the Recycle Bin on your PC or Trash in your Macintosh computer. Users with the proper permission level (administrators and editors) have the ability to delete a post, page, and/or comments. When you delete the item, it is moved to the trash folder where it will remain for 30 days. a quick action again. (60165)

List View

  • Add keyboard shortcut to collapse list view items other than the focused item. (59978)
  • Adjust the List View close icon to resemble the Inspector close icon. (59999)
  • Update “Actions” string to “Options” in List View. (60136)

Templates

  • Add filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. to allow extending the list of post content blocks. (60068)
  • Render non-editable preview of template part when user does not have capability to edit template part. (60326)
  • Template Parts: Remove pattern title from sidebar. (60160)
  • Template Parts: Update replace flow to separate template parts from patterns. (60203)
  • Template Parts: Update the ‘Replace’ label to ‘Design’. (60156)

Zoom Out

  • Add a delete control to toolbar on zoomed out mode. (60214)
  • Media dialog push content in zoomed out mode. (60170)

Components

  • Popover / ToggleGroupControl: Use useReducedMotion() from @wordpress/compose. (60168)
  • date-fns: Bump to v3.6. (60163)

REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/.

  • Allow view access of template rest endpoint to anyone with the edit_post capability. (60317)

Commands

  • Polish Command Palette. (60134)

Page Content Focus

  • Allow selecting template parts in page content focus mode. (60010)

Inspector Controls

  • Add: PostCardPanel component. (59870)

Package and utility updates

  • Router: Update history package to 5.3.0, fix query string generation. (60271)
  • Create block: Add new namespacePascalCase template variable. (60223)

New APIs

Extensibility

  • Extensibility: Support PluginBlockSettingsMenuItem in the site editor. (60033)

Bug Fixes

Block Library

  • Fix enqueuing block theme styles when separate asset loading is enabled. (60098)
  • Fix lightbox UI disallow editing. (59890)
  • Fix navigation link ui close focus management. (59925)
  • Removed pointer-events none inline style due it blocking crop action. (60305)
  • Search Block: Apply font-related style inheritance to input field. (60321)
  • Columns block: Fix arrow up into it. (55197)

Site Editor

  • Fix rendering PluginTemplateSettingPanel when we’re editing a template. (60215)
  • Fix: Use viewportWidth in pattern preview data view. (60315)
  • Templates: Fix deferred rendering. (60361)
  • Site Editor: Consolidate save button functionality. (60077)
  • Revert #60300: Make sure the CSSCSS Cascading Style Sheets. class id-dark-theme is added to the editor iframeiframe iFrame 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. body. (60616)

Block Editor

  • Make sure the CSS class is-dark-theme is added to the editor iframe body. (60300)
  • Raw handling: Preserve class. (60331)
  • Raw handling: Preserve empty paragraphs. (59476)
  • Wiriting flow: Backspace at beginning of first paragraph block prevents block from being deleted. (56329)
  • DOM: Fix return types of focus.tabbable methods. (60274)

Components

  • CustomSelectControlV2: Fix hint behavior in legacy. (60183)
  • InputControl: Ignore IME events when isPressEnterToChange. (60090)
  • TextControl: Apply zero margin to input element. (60282)

Global Styles

  • Fix missing class for Global Styles > Colors. (60094)
  • Reset specificity of body selector when processing with postcss. (60266)
  • Shadow: Revert shadow default presets opt-in to opt-out. (60204)
  • Global Styles: Make strings translatable. (60127)
  • Skip outputting base layout rules that reference content or wide sizes if no layout sizes exist. (60489)

Zoom Out

  • Fix zoom out mode toggling between pattern category selection. (60225)

Data Views

  • Fix focus outline visibility and truncation in data view record titles. (60191)

Layout

  • Fix horizontal flex layout in classic themes. (60154)

Post Editor

  • Editor: Memoize ‘getInsertionPoint’ selector. (60015)
  • Fix block toolbar dropdown separator color. (60336)
  • Backportbackport A 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. r57868 (Editor: Prevent font folder naive filtering causing infinite loops) from WordPress-Develop. (60141)

Block templates

  • Add null check to prevent errors in get_block_template filter. (60491)

Utilities

  • URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org: Return early in getFilename where URL argument is falsy. (60265)

Accessibility

Data Views

  • Add click-to-select behavior on table rows. (59803)
  • Data views list layout: Apply focus styles to items on focus-visible rather than focus. (60253)
  • Update field display in grid layout. (60083)
  • Data Views: Updating keyboard navigation in list layouts. (59637)

Site Editor

  • Restore Style book close button tooltip. (60177)

Block Library

  • Remove CSS order property from social icons placeholder UI. (60032)

Performance

Block Editor

  • Avoid fetching all reusable blocks (user patterns) on post/site editor load. (58239)
  • Block editor: Optimize hasSelectedInnerBlock selector. (60330)
  • Templates performance: Resolve patterns server side. (60349)

Block Library

  • Template part: Avoid pattern fetch on mount. (60297)

Block Editor

  • Inserter: Cache search normalization results. (60080)
  • Format library: Improve unknown format performance. (48761)

Experiments

Site Editor

  • Zoom-out view: Disable canvas resizing. (60104)

Documentation

  • Add auto generated APIAPI An 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. documentation for editor package. (60356)
  • Add component props documentation. (60350)
  • Add php @global documentation. (59931)
  • Change heading level on troubleshooting section. (60233)
  • CustomSelectControlV2: Match v1 stories to test legacy component. (60182)
  • Docs (general): Fix some typos. (60260)
  • Fix @todo tags to follow standards in WordPress comments. (60148)
  • Fix Font Collection JSONJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. schema definition. (60285)
  • Fix: Invalidinvalid A 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. documentation link to load JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/.. (60181)
  • Fix: Invalid links to the block supports api. (60199)
  • Fix: Non existent link to submitting to the block directory. (60389)
  • Interactivity API: Variable name correction in the documentation. (60056)
  • Create Block: Update external template documentation to include variants. (60095)

Code Quality

Block Editor

  • Add comment for unmemoized context. (60272)
  • Fix ESLint warning in BlockListBlock component. (60064)
  • RichText: Switch from disableEditing to standard html readonly attribute. (60327)
  • Site Editor: Reuse inserter search term normalization. (60218)
  • canInsertBlockType: Extract helper for selector dependants. (60235)
  • Fix editor canvas overflow on search results with position: Relative. (60287)
  • Editor: Move template areas to editor package. (60179)

Components

  • CustomSelectControlV2: Rename for consistency. (60178)
  • Navigator: Fix two nits. (60273)
  • NavigatorProvider: Move all state management to one reducer. (60190)
  • Components: Try obviating Popover pointer event trap. (59449)

Post Editor

  • Memoize the getTemplateInfo selector. (60200)
  • Update: Remove template summary component. (60351)
  • Update: Use getPostIcon selector on document bar. (60128)
  • Distraction free: Remove unwanted space from string. (60108)

Global Styles

  • Additional CSS: Add code comments contextualising tranformStyles for clarity. (60267)
  • Global styles: output :root selector for CSS custom properties. (42084)
  • Style Engine: Continue get_classnames loopLoop The Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop. after adding the default classname. (60153)

Font Library

  • Add test for Font Library and Theme Style Variations. (60250)
  • Update google fonts font collection data URL to the latest version available. (60079)

Block Library

  • Image: Use the new ‘useUploadMediaFromBlobURL’ hook. (60208)
  • Navigation Block: Add test coverage to check that post content is not removed. (60189)

Site Editor

  • DataViews: Don’t memoize every callback ‘PagePages’ component. (60103)
  • History: Simplify the push and replace methods. (60112)

Rich Text

  • RichText: Separate fallback instance ID for selection retrieval. (60277)

Block Locking

  • E2E: Test BlockSwitcher availability in l-post-ul-group CPT. (60254)

Data Views

  • DataViews: Fix reactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. warning error in list layout. (60101)

Tools

Testing

  • Automated Testing: Remove Puppeteer CI Job. (59311)
  • CustomSelectControlV2: Stabilize tests. (60133)
  • E2E: Fix flaky Site Editor pages end-to-end test. (60109)
  • Font Library: Add upload font test. (60221)

Build Tooling

  • Blocks: Fix double gutenberg_ prefix in built dynamic blocks PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher. (60288)

First-time contributors

The following PRs were merged by first-time contributors 🎉 :

Contributors

The following contributors merged PRs in this release:

@aaronrobertshaw @afercia @andrewhayward @andrewserong @artemiomorales @bph @draganescu @ellatrix @fabiankaegy @geriux @getdave @glendaviesnz @interdevel @jameskoster @jasmussen @jeryj @jorgefilipecosta @jsnajdr @madhusudhand @MaggieCabrera @Mamaduka @matiasbenedetto @mcsf @mikachan @mikeybinns @mirka @mujuonly @n2erjo00 @nirav7707 @noisysocks @ntsekouras @oandregal @ockham @okmttdhr @pedro-mendonca @peterwilsoncc @ramonjd @richtabor @ryanwelcher @scruffian @shail-mehta @Soean @steveariss @stokesman @t-hamano @talldan @tellthemachines @torounit @tyxla @youknowriad

Props to @andrewserong, @isabel_brison and @saxonf for assisting with the preparation of this post.

#gutenberg, #gutenberg-new

What’s new in Gutenberg 18.0? (27 March)

“What’s new in GutenbergGutenberg The 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 project (formerly called Full Site Editing).


Graphic w/ text: What's new in Gutenberg 18.0

Gutenberg 18.0 has been released and is available for download!

The 180th Gutenberg pluginPlugin A 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 release comprises a total of 206 closed PRs by 59 contributors and with a record-setting 17 first-time contributors. You’ll find in the release the result of additional Data View work, improvements for featured imageFeatured image A featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts. and and media+ text blockBlock Block 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. . The changelog also lists a ton of bugbug A 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. fixes, performance improvements and about 35 PRs of Documentation updates. 

Table of Contents

Sitewide Color and Typography presets

In addition to Style Variations, the Site view screen is now populated with the controls to set side-wide color and typography choices. This will streamline designers’ workflows.  (59594)

Users can use the Media + Text block in their templates as it now supports the featured image. The design possibilities now opened up beyond a column-bases layout also for single post or page templates. Drop shadow controls expand the design tools for developers, designers and site owner alike. (51491) (59616)

Data Views with improved filters and updated Template index page

The data views screens, which are also prototypes for the future adminadmin (and super admin) list pages, received quite a few intriguing updates. The Templates index page is now very flexible. In addition to the table view, users can now also enable a grid layout with preview cards or a list view that allows for full preview in a three-page window. The list view is available for templates, pages, and template parts. Another enhancementenhancement Enhancements are simple improvements to WordPress, such as the addition of a hook, a new feature, or an improvement to an existing feature. is the ability to select multiple criteria for filters. (59610)  (59858) (59792)

Other Notable Highlights

The Grid layout experiments are the next step to consistent responsiveness of posts, pages, and templates.
They are evolving quite a bit. If you haven’t opened them up you might want to start doing so now. This release includes a couple of updates. Blocks can now be grouped as a grid via the transform feature. With Column Start and Row Start controls in the sidebarSidebar A 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., the Drag and Drop of blocks around the grid is now possible. (59483) (59853)

Changelog

Full changelog available

Enhancements

  • CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Data: Update method generating plural names. (59881)
  • Expand main content area to viewport when zoomed out. (59512)
  • Update ‘sidebar card’ appearance. (59997)

Data Views

  • Add: Command click to select item on table view. (59563)
  • DataViews: Add AND logic operators to filters. (59953)
  • DataViews: Add default getValue for fields. (59810)
  • DataViews: Implement multiple selection for filters. (59610)
  • DataViews: Make list layout stable. (59858)
  • Pages data view: Update quick-actions. (59551)
  • Reduce visual prominence of primary actions in table data views, and consolidate primary + secondary actions in ellipsis menu. (59128)

Site Editor

  • Patterns: Add a title to the categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. delete flow and increase line height. (59645)
  • Standardize block tools toggle button size to 32px. (59625)
  • Update index page for templates. (59792)
  • [Site Editor]: Move featured image at the top of the inspector controls. (59783)

Block Library

  • Add featured image to Media & Text block. (51491)
  • Social Icons: Update Medium icon. (57073)
  • Table Block: Fixed width table cells on by default. (49672)
  • Update Reddit social icon to latest brand guidelines. (59438)

Components

  • Add typing for date and time typing for TextControl. (59666)
  • Add: Support for menu group to the Dropdown. (59723)
  • Update the line height for components. (60028)

Design Tools

  • Add Box Shadow support for featured image. (59616)
  • Background block supports: Move block support defaults to gutenberg_render_background_support and revert gutenberg_get_background_support_styles. (59889)

Layout

  • Add Column Start and Row Start controls to Grid children. (59483)
  • Allow blocks to be grouped as a Grid. (59853)

Global Styles

  • Remove preset headers. (59504)
  • Try color and typography presets in Site View. (59594)

Block APIAPI An 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.

  • Display settings ‘label’ defined by the ‘register_setting’ method. (59243)

Rich Text

  • RichText: Add non-breaking space shortcut on Windows. (43150)

New APIs

  • Support the PluginDocumentSettingPanel slot in the site editor. (59985)
  • Add pre 6.5 compat for viewStyles. (59322)

Bug Fixes

Block Library

  • Add filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. for duotone to account for gutenberg_restore_image_outer_container in classic themes. (59764)
  • Add richText identifier to blocks. (59056)
  • Close navigation link ui on escape. (59838)
  • Code block: Preserve newlines. (59627)
  • Do not focus new navigation block menu until loading is finished. (59801)
  • File: Add center alignment editor class for classic themes. (59975)
  • Fix create menu after menu switch. (59630)
  • Fix image layout shift from placeholder to selected placeholder. (59857)
  • Fix overlay issue when empty featured image is used in Cover Block. (59855)
  • Media & Text: Remove the duplicate Media width control. (59776)
  • Prevent default on primary+k to prevent command center from opening on navigation link. (59845)
  • Quote: Show as active when deeply nested child block is selected. (59662)
  • RichText: Document the identifier prop. (60036)
  • Social icons: Only render label container when there’s a label. (60060)
  • Template Parts: Fix typo in translatable string. (59816)
  • Ensure consistent return type in WP_Navigation_Block_Renderer::Get_markup_for_inner_block(). (59820)
  • Return early from saving metaMeta Meta 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. data for the navigation without a $post->ID. (59875)
  • Fix root ID calculation when check if block can be transformed. (60167)
  • Featured Image: Fix overlay rendering in the editor. (60187)
  • Fix self closing navigation overlay. (60130)
  • Navigation: Avoid content loss when only specific entity fields are edited. (60071)

Font Library

  • Avoid auto-removing font families without font faces. (59910)
  • Ensure that errors reported from uploading font files are not duplicated. (59564)
  • Fix JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. errors when activating or deactivating system fonts. (59935)
  • Fix typo in upload text. (59655)
  • Polish Google Fonts consent box. (59631)
  • Refactors the upload handler in order to check if files being uploaded are valid font files. (59648)
  • Reset notices when navigating away from the collection. (59981)
  • Activate the fonts coming from the backend and not the data from the frontend. (60093)
  • Install fonts in sequence to work around race condition. (60180)

Interactivity API

  • Backportbackport A 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. fixes from Core. (59903)
  • Fix interactivity api end-to-end tests. (59836)
  • Interactivity: Ensure stores are initialized on client. (59842)
  • Interactivity: Restore scope when yielded promise rejects. (59708)
  • Prevent non-object state from being added. (59886)
  • Re-introduce data_wp_context() with _deprecated_function() call. (59834)

Site Editor

  • Don’t display welcome guide in hybrid theme. (55865)
  • Editor: Fix loading templates using a top level pattern block that includes a template part. (59900)
  • Fix opening of save panel when using the save shortcut. (59647)
  • Fix selected featured image when opening media library. (59769)
  • Make the delete navigation menuNavigation Menu A theme feature introduced with Version 3.0. WordPress includes an easy to use mechanism for giving various control options to get users to click from one place to another on a site. confirm dialogs consistent. (59825)
  • Restore the back button when navigating to the template from the home page. (59639)

Block Editor

  • Fix allow mouse users to edit link text when Link UIUI User interface is active. (59635)
  • Fix crash when unmounting an editor iframeiframe iFrame 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.. (59992)
  • Handle when attributes param passed into hasStickyOrFixedPositionValue is nullish. (59800)
  • List view: Fix stuck moving animation on Enter. (59644)
  • Shadow support enable skip serialization for dynamic blocks. (59887)
  • FlatTermSelector: Invalidate optimistic update if term creation fails. (59945)

Global Styles

  • Fix retrieval of referenced preset values in editor. (59811)
  • Global Syles: Apply fallback background color to typography elements. (59347)
  • Presets: Show the default empty variation as well as the other presets. (59717)
  • Remove filter for same number of settings. (59590)
  • Site editor: Find font families for typography presets crashes editor. (59806)
  • Force root min-height of 100% for backgrounds. (59809)
  • Featured Image: Fix block support selectors after shadow support addition. (60184)
  • Fix list of base theme fonts when a theme variation is applied.. (59959)

Patterns

  • Add pattern title in create modal in post editor. (59550)
  • Implement pattern overrides behind IS_GUTENBERG_PLUGIN flag. (59702)
  • Pattern Explorer: Pass ‘rootClientId’ to the pattern list. (60014)
  • Pattern Shuffling: Don’t assume that patterns have categories. (60070)

Data Views

  • Ensure the ‘select all’ checkbox appears on hover. (59799)
  • Fix: Regressionregression A software bug that breaks or degrades something that previously worked. Regressions are often treated as critical bugs or blockers. Recent regressions may be given higher priorities. A "3.6 regression" would be a bug in 3.6 that worked as intended in 3.5.: Default templates and template parts views do not work. (59794)
  • Ignore cmd-click when row not selectable. (59697)
  • [DataViews]: Fix item actions. (59748)

Components

  • DateTimePicker: Change day button size back from 32px to 28px. (59990)
  • Fix unwanted ToggleGroupControl backdrop vertical animation. (59642)
  • PaletteEdit: Fix order numbers. (52212)

Layout

  • Experiments: Fix label typo: “Grid interactivity”. (59796)
  • Show inherit toggle in the absence of settings.layout object. (59580)
  • Use correct layout type to display controls. (59979)

List View

  • Block Bindings: Remove Block Bindings icon from List View, fixes and CSSCSS Cascading Style Sheets. updates. (59477)
  • Heading Block: Show default block name in list view when content is empty. (59827)
  • Blocks: getBlockLabel: Use RichTextData.toPlainText if available. (58524)

Data Layer

  • Fix getEntityRecordsTotalPages when per_page is not provided. (59983)

Icons

  • Fix return icon viewbox. (59669)

AccessibilityAccessibility Accessibility (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)

  • Add tooltip to several Back buttons. (59760)
  • Make save panel a dialog with proper labels, fix site editor focus loss after save. (59622)
  • Fix labeling of the navigation links in the list view. (59370)

Documentation

  • Block JSONJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. schema: Add layout.allowCustomContentAndWideSize field. (59736)
  • Components: Fix headline hierarchy in README. (59726)
  • Components: Hide private READMEs from handbook. (60003)
  • Dataviews: Improve story. (59773)
  • Docs/fix typo in metadata reference guide. (59577)
  • Docs/fix typos and clarify wording in blocks supports guide. (59721)
  • Docs/fix typos in block context. (59575)
  • Docs/fix typos in block registration guide. (59720)
  • Docs/fix typos in block supports. (59919)
  • Docs/fix typos in edit and save reference guide. (59576)
  • Docs: Flex – Fix headline hierarchy. (59686)
  • Docs: List all minor versions on Versions in WordPress page. (58003)
  • Docs: Remove alert callout on block selectors page. (60020)
  • Docs: Update Interactivity API package readme. (59763)
  • Fix broken links in Interactivity API documentation. (59715)
  • Fix sample code on InputControl documentation. (59517)
  • Fix typo in platform-docs. (60042)
  • Fix: Invalidinvalid A 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. links to getting started with JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/.. (59927)
  • Fixes pseudo code doc block to use real PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher. (60012)
  • HeadingLevelDropdown: Fix JSDoc and documentation. (59727)
  • Improve Gutenberg platform documentation homepage. (59749)
  • InputControl: Make onChange observable in Storybook. (60055)
  • Interactivity API Docs: Clarify that getElement()’s ref can be null. (59868)
  • Platform Docs: Fix JSX error. (59967)
  • Plugin short description less than 150 characters. (59661)
  • RadioControl: Update deprecated suggestion in readme. (60002)
  • Replace screenshots of Radio Control. (60024)
  • Replace “sidebar” with “panel” in README.md. (59664)
  • Update GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ edit URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org in docusaurus.config.js. (59969)
  • Update ReactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. documentation links for forms. (59657)
  • Update api-reference – data-bind–hidden is an incorrrect attribute – should be data-wp-bind–hidden. (59955)
  • Update block supports documentation for WordPress 6.5. (59862)
  • Update dependency-extraction-webpack-plugin documentation. (59973)
  • docs: Fix syntax in block filters example. (59636)
  • theme.json schema: Add settings.color.caption definition. (60017)

Code Quality

  • Add $schema to tsconfig files. (59861)
  • Added @global to PHP documentation Comments. (59725)
  • Consolidate template actions components. (59586)
  • Core Data: Clarify comments for entities’ plural methods. (59946)
  • Fix Code Standards for RCrelease candidate One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). 2 release. (59774)
  • Fix typo in Dataviews and Font Collection packages. (59656)
  • Fix: Typo correction tff to ttf. (59665)
  • Global styles utils: Remove unused vars. (59805)
  • Refactor zoom-out iframe scale. (59618)
  • Refine include/exclude patterns in phpcs.xml.dist. (59712)
  • Typography Presets: Use && rather to avoid a messy nested conditional. (59920)
  • synchronizeBlocksWithTemplate: Extract common functions. (59682)

Block Editor

  • Block tree reducer: Avoid nested update for insertUsage. (59681)
  • Block tree reducer: Avoid repetitive Map.get. (59672)
  • BlockSettingsDropdown: No need to cast ‘clientIds’ to an array. (59940)
  • BlockSettingsMenuControls: Remove ‘__unstableDisplayLocation’ prop. (59942)
  • Don’t memoize callbacks in ‘BlockSettingsDropdown’. (59397)
  • Link dialog: Remove CSS hack. (59746)
  • Pattern Explorer: Remove leftover source filter state handlers. (60019)
  • Fix code formatting in Nav block view file. (60162)

Components

  • Button : Deprecate isSmall prop. (59734)
  • Button: Keep deprecated props in type definitions. (59913)
  • Replace isSmall prop with size in NavigationMenuSelector. (59667)
  • Replace isSmall prop #53560. (59302)
  • TextareaControl: Remove extra closing curly brace in inputStyleNeutral. (59744)
  • Update Snapshots for line height. (60041)

Block Library

  • Add explanatory comment to Nav Link block fix for Command Center. (59864)
  • Enforce @SInCE tags in block-library/src//.php files. (59700)
  • Refactor Enter keypress on Nav Link. (59848)
  • Update Nav block permissions variable naming accuracy. (59882)

Global Styles

  • Fetch the variations inside the component. (59588)
  • Theme JSON: Remove unused vars in layout class. (59938)
  • Use the preivew iframe to preview typography for consistency. (59587)
  • Background block supports: Move size defaults to hooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same. and block.json. (60008)

Plugin

  • Remove unnecessary ‘IS_GUTENBERG_PLUGIN’ check in ‘load.php’. (59873)
  • Update PHP Sync Issue generation script to ignore PRs with given labels. (59549)

Data Views

  • Update: Dataviews do not use strings on isCustom props passed down. (59609)
  • [Data Views]: Remove separator in item actions. (59822)

Data Layer

  • Data: Deprecate the getIsResolving selector. (59679)

Tools

Build Tooling

  • Add inline comment denoting version for Ruby setup. (59640)
  • Build: Dedupe packages. (57800)
  • GitHub Actions: Fix PHP file change detection logic. (59653)
  • Improve likelihood of Cherry Picking script including all PRs. (59871)
  • Interactive template: Use wp_interactivity_data_wp_context function. (59995)
  • Test: Dynamically detect and set max-workers. (59904)
  • Update docusaurus to the latest version. (59866)

Testing

  • Remove @kevin940726 and @Mamaduka from end-to-end test codeowners. (60067)
  • Upgrade Playwright to v1.42. (59339)
  • Use viewScriptModule block.json field for interactivity end-to-end tests. (59705)
  • end-to-end theme switch: Match incoming theme slug, then optional folder. (59851)

First time contributors

The following PRs were merged by first time contributors:

Contributors

The following contributors merged PRs in this release:

@aaronrobertshaw @afercia @afragen @ajlende @alexstine @andrewfleming @anton-vlasenko @artemiomorales @bacoords @c4rl0sbr4v0 @carolinan @chrisbellboy @colinduwe @creativecoder @DAreRodz @dcalhoun @draganescu @ellatrix @enejb @enodekciw @flexseth @fluiddot @gaambo @georgestephanis @geriux @getdave @huzaifaalmesbah @inc2734 @J0n-92 @jaclync @jameskoster @jasmussen @Jayanth-Parthsarathy @jeryj @jorgefilipecosta @jsnajdr @kevin940726 @krokodok @luislard @Mamaduka @matiasbenedetto @mattsherman @mcsf @megane9988 @michalczaplinski @mirka @mujuonly @mzahir @ndiego @noisysocks @ntsekouras @oandregal @pbking @ramonjd @rcoll @SahilThakur02 @Sam-Xronn @scruffian @shail-mehta @SiobhyB @sirreal @Soean @Strangehill @sunil25393 @swissspidy @t-hamano @talldan @tellthemachines @TeresaGobble @tjcafferkey @tomepajk @tyxla @vcanales @youknowriad

Props to @greenshady for review, @annezazu for highlights selection ,and @joen for the visuals in this post.

#gutenberg, #gutenberg-new

What’s new in Gutenberg 17.9 (13 March)

“What’s new in GutenbergGutenberg The 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.

Text displaying: "What's new in Gutenberg 17.9?"

Gutenberg 17.9 has been released and is available for download!

As with Gutenberg 17.8, many contributors are still focused on polishing for the upcoming WordPress 6.5 release, so this Gutenberg release continues to prioritize stability and bugbug A 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. fixes. Enhancements and new features are highlighted below.

As a reminder, with WordPress 6.5 now in the RCrelease candidate One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). phase, bug fixes from the Gutenberg pluginPlugin A 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 are backported for inclusion in 6.5 as needed. However, new features in Gutenberg 17.9 will not be included in WordPress 6.5.

Color and typography presets in Global Styles

Screenshot of colors and typography panels in global styles, with preset buttons available.

Color and typography presets that are defined in theme variations are now exposed within the color and typography sections of Global Styles. This new feature allows users to mix and match color presets or typography from different variations, offering greater flexibility for designs from a given theme. (56622)

Indenting List blockBlock Block 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. items via the tab key

The List block now supports indenting and outdenting when the selection is at the beginning of the List item. This improves the usability of the List block by allowing indenting via the keyboard, while still preserving existing tabbing behavior in the editor canvas when the selection is elsewhere within the block. (59199)

Shuffle option when choosing patterns

When a pattern is inserted and has categories defined, and where the pattern contains a single top-level block such as a Group block, a shuffle button is exposed in the block toolbar that allows a user to cycle through random patterns. This makes it easier to quickly browse through a variety of available patterns in specific scenarios. (59251)

Swap Template Parts in the Inspector

Screenshot of replace flow for template parts in the block inspector controls.

When selecting a Template Part in the site editor, the replace flow is now more discoverable with previews of alternate Template Parts available to select from the block inspector controls. This allows for a more at-a-glance approach to browsing different options for swapping out headers and footers. (55128)

Other Notable Highlights

  • Background images can now be set in the root of theme.json to provide site-wide background images (59354). There is currently no UIUI User interface for it in Global Styles, and this will be explored in future releases.
  • For container blocks that use allowedBlocks, insert before and after actions are now supported on child blocks (59162).
  • Use drag handles to set row and column span and see a dotted outline of block placement when the new “Grid interactivity” experiment is enabled (59052).

Changelog

Full changelog available

Enhancements

Data Views

  • Apply hover styles to filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. chip while being configured. (59236)
  • Display all checkboxes when a single item is selected. (59233)
  • Pages data view: Make ‘View’ button open a new tab. (59554)
  • Reposition pattern detail icon. (59363)
  • Update ‘Add filter’ button in data views. (59433)
  • Update empty/loading states. (59437)
  • Update filter control position. (59231)
  • Update page selector appearance. (59284)
  • Update pages dataview icons, add ‘drafts’ icon. (59285)
  • Update sidebarSidebar A 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. titles for Template and Page management data views. (59011)

Global Styles

  • Add background image to top-level theme.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. styles. (59354)
  • Add color and typography presets to Global Styles. (56622)
  • Create a shared component for typography previews. (59503)
  • Enqueue block custom CSSCSS Cascading Style Sheets. only when block renders on the page. (58991)
  • Style Book: Should persist when browsing global styles panels. (59261)

Block Library

  • Introduce the ‘useUploadMediaFromBlobURL’ utility hook. (59350)
  • Remove redundant copy from PanelBody titles. (59278)
  • Template Parts: Add a replace flow to the inspector controls. (55128)

Site Editor

  • Block Theme Previews: Remove “Looking for Template Parts?” hint. (59092)
  • Remove the site editor sidebar navigation edit button. (59335)
  • Scale the zoomed out mode to fit available space. (59342)
  • View full zoomed out mode canvas while inserting patterns. (59337)
  • Add: Shuffle button in zoom out mode. (59573)

Font Library

  • Add option to revoke access to Google Fonts. (59205)
  • Make font collection fields translatable. (59256)
  • Update the spacing in the font collection panel. (59357)

Post Editor

  • Editor: Standardize headerHeader The 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. button size to 32px. (58532)
  • Tweak: Sidebar categories panel. (59495)

Patterns

  • Add Shuffle option to sections via pattern categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging.. (59251)
  • Use block naming for marking blocks as overridable in patterns. (59268)

Components

  • Storybook: Add mechanism to redirect moved stories. (59181)

Nested / Inner Blocks

  • InnerBlocks: Support insert before/after block actions when using allowedBlocks. (59162)

Plugin

  • Update cherry pick script to add Backported to WP Core label for backports. (58970)

Bug Fixes

Block Library

  • Columns: Correctly recalculate column widths when the column count is increased by more than 2 at once. (59301)
  • Group: Fix alignment of Group block placeholder text. (59271)
  • Query LoopLoop The Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop.: Don’t show publicly non-queryable taxonomies. (59458)
  • Image: Remove scrolling of empty image blocks. (59305)
  • Search: Use font size for search icon. (59159)
  • Site Logo: Update URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org for site icon settings with fallback for WP coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. versions earlier than 6.5. (59485)
  • Site Logo: Update capitalization of Use as Site Icon toggle. (59383)
  • Title & Featured ImageFeatured image A featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts.: Hide non content controls when block editing mode is ‘contentOnly’. (59295)

Font Library

  • Avoid creating font families without font faces. (59436)
  • Avoid loading theme fonts twice and assume they were already resolved by the font face resolver. (59421)
  • Changed installFont to installFonts so that multiple font families can be installed at once. (59451)
  • Fixed the font family modal to open in state when a font is already selected. (59379)
  • Font collection pagination: Add min height to avoid infinite number. (59241)
  • Hide UI elements when user lacks permissions. (59332)
  • Load/Unload the font face in browser when toggling the variants. (59066)
  • Use SearchControl component for search input. (59589)

Interactivity APIAPI An 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.

  • Fix navigate() issues related to initial state merges. (57134)
  • Fix context object proxy references. (59553)
  • Improve context merges using proxies. (59187)
  • Navigation: Add missing empty space to print out valid HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.. (59255)
  • Prevent unwanted subscriptions to inherited context props. (59273)
  • Rename data_wp_context function. (59465)

Components

  • Button: Fix focus outline in disabled primary variant. (59391)
  • Button: Place children before the icon when iconPosition is “right”. (59489)
  • Fix tooltip font. (59307)
  • HStack, VStack: Stop passing invalidinvalid A 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. props. (59416)
  • URLPopover: Restore min-width style. (59274)

Block Editor

  • Fix Navigation link control overlapping issue. (59065)
  • Fix: Re-render toolbar when parent block changes. (59234)
  • List: Copy wrapper when multi selecting items. (59460)
  • Refactor: UseBlockTools hook. (58979)
  • Rich text: Fix typing into empty flex element. (59473)
  • URLPopover: Fix a problem with the layout of link settings. (58906)
  • Fix issue with appender jumping when creating a new pattern. (59582)
  • Allow event bubbling even if keydown is passed. (59474)

Custom Fields

  • Block Bindings: Fix console error when selecting a bound block. (59598)
  • Change default “Connected to a custom fieldCustom Field Custom Field, also referred to as post meta, is a feature in WordPress. It allows users to add additional information when writing a post, eg contributors’ names, auth. WordPress stores this information as metadata. Users can display this meta data by using template tags in their WordPress themes.” message in bindings. (59434)
  • Fix inserting button block when pressing enter in a block with bound text attribute. (59361)
  • Fix query loop with block bindings not working in the editor as expected. (59283)

Data Views

  • DataViews: Don’t use combobox when there are few available options. (59341)
  • DataViews: Set color for primary field/a element when focused. (58814)
  • Dataviews: Fix sticky table headers. (59467)

Site Editor

  • Ensure ResizableFrame does not force Cover blocks within the editor to show drag handles. (59262)
  • Iframeiframe iFrame 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.: Scale html instead of iframe element for zoomed out mode. (59334)
  • Zoom out mode: Only apply grey background for mode. (59377)
  • Site Editor: Fix Global Styles outdated output. (59628)
  • Fix site editor crashing when not fully loaded. (59658)

Global Styles

  • Dynamically set border panel label based on the controls available. (59358)
  • Shadow: Fix layout collapse when indicator is selected. (59309)
  • Theme JSON: Check for null values to cater for blockGap. (59258)
  • Remove the extra unneeded color variations panel. (59718)

Post Editor

  • Command Palette: Prevent mode switching if only one editor mode is available. (59299)
  • Editor: Fix post type check in isEditingTemplate selector. (59105)
  • Top Toolbar: Fix ‘collapsed’ state synchronization. (59267)

Block hooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same.

  • Display toggle for hooked blocks added via filter. (59396)
  • Navigation Block: Fix erroneous escaping of ampersands. (59561)

Patterns

  • Disable image caption if part of synced pattern. (58916)
  • Disable selection checkbox if no bulk actions are eligible. (58950)

Block bindings

  • Fix Enter on disabled rich text. (59320)

Page Content Focus

  • Fix DisableNonPageContentBlocks behavior. (59297)

Design Tools

  • Cover block: Clear aspect ratio value when toggling full height. (59296)
  • Disable core shadow presets by default, let themes opt-in. (58766)

Layout

  • Fix MarginVisualizer and PaddingVisualizer. (59227)

Block Conversion

  • Preserve bindings metadata in block transforms. (59179)

Typography

  • Fluid typography: Pass theme.json settings to override merged theme data. (58362)

Data Layer

  • Ignore HTML Elements in ReduxDevTools. (57497)

AccessibilityAccessibility Accessibility (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)

Data Views

  • Conditionally display filter reset button. (59432)
  • Use aria-disabled on disabled checkboxes and add tooltips. (59364)

Design Tools

  • Shadows: Improve accessibility of shadows dropdown. (58828)

Block Editor

  • Fix canvas iframe button accessibility and silent tab stops. (59317)
  • Fix: Disable ‘Open save panel’ when there are no changes to save, while navigating with keyboard. (59543)

Block Library

  • List block: Allow tab to indent/outdent at selection start. (59199)

Custom Fields

  • Add visual indicator if a block is connected to block binding source. (59185)

Performance

Block Editor

  • Block Bindings: Do not use useSource hook conditionally. (59403)
  • Block Preview: Optimize default additional styles. (59556)

Experiments

Layout

  • Add Grid interactivity experiment to allow canvas interaction with grid layout. (59052)

Components

  • Tabs: Rename initialTabId prop to defaultTabId. (59035)

Font Library

  • Fix infinite loop when calling wp_get_upload_dir in a function that’s used to filter font_dir. (58839)

Documentation

  • Add hyperlink to media-upload documentation. (57170)
  • Add title and link for data-wp-each-child. (59505)
  • Adds import statement to code usage example. (59327)
  • Core Block Reference: Add allowedBlocks field. (59424)
  • Core Block Reference: Add ancestor status and refactor generation logic. (59390)
  • Create block interactivity: Fix minimum versions. (59375)
  • Docs: Fix typo in Tutorial. (59581)
  • Docs: Fix typo in blocks attributes guide. (59571)
  • Docs: Remove TOC, update formatting, and fix grammar in Interactivity API reference. (59406)
  • Fix @wordpress/interactivity module ID in documentation. (59419)
  • Fix: Multi line comment format on footnotes block. (59312)
  • Format PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher inline comments correctly. (59452)
  • Interactivity API Docs: Add async actions documentation. (59401)
  • Interactivity API Docs: Add initial version of getContext and getElement. (59293)
  • Interactivity API Docs: Add server functions documentation. (59373)
  • Interactivity API Docs: Add withScope description. (59542)
  • Interactivity API Docs: Fix code not closing. (59395)
  • Interactivity API Docs: Update image with WordPress Make Core source. (59281)
  • Interactivity API Docs: Merge Interactivity documentation to keep consistency with other packages. (59270)
  • Fix comma in block-registration.md. (57248)
  • Update Gutenberg versions in WP for 6.5. (59446)
  • theme.json schema: Fix styles.background definition. (59595)
  • theme.json schema: Update appearanceTools description. (59499)

Code Quality

  • Add @global to PHP doc comments. (59522 and 59287)
  • ESLint: Enable react/jsx-boolean-value for the Gutenberg codebase and fix. (59557)
  • Editor: Remove MoreDropdownMenuComponent. (59096)
  • Interface: Remove unused MoreMenuFeatureToggle component. (59095)
  • Remove old templates list code. (59558)
  • Replace Navigator isSmall prop. (59304)
  • Theme JSON Tests: Refactor base styles to a static variable. (58975)
  • Update: Simplify code and use capture events instead of pointer-events hack. (59565)
  • l10nL10n Localization, or the act of translating code into one's own language. Also see internationalization. Often written with an uppercase L so it is not confused with the capital letter i or the numeral 1. WordPress has a capable and dynamic group of polyglots who take WordPress to more than 70 different locales.: Unify terminology to screen size. (59456)

Block Library

  • BlockPopover: Remove __unstableCoverTarget and __unstableRefreshSize in favour of BlockPopoverCover. (59228)
  • Blocks: Refactor deletion warnings dialog. (58952)
  • Navigation Block: Remove unnecessary @param annotation. (59559)
  • Site Title Block: Rename and move edit file. (56357)

Font Library

  • Replace deprecated isSmall prop with size="small" prop. (59530)
  • Update font collection JSON schema to accommodate the changes made in wp_register_font_collection. (59314)
  • Use NavigatorProvider in Font Library Modal. (59036)

Components

  • CustomSelectControlV2: Remove legacy adapter layer. (59420)
  • Remove unused useLatestRef() hook. (59471)
  • SnackbarList, Snackbar: Add unit testunit test Code 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.. (59157)

Global Styles

  • Create a style preview component. (59498)
  • Global styles variations: Refactor directory structure. (59491)

Post Editor

  • Editor: Use hooks instead of HoCs in DocumentOutline. (59209)
  • EditorInitialization: Fix ESLint warnings for internal hooks. (59118)

Block Editor

  • getDirectInsertBlock: Remove ‘directInsert’ as a callback handler. (59172)
  • mergeBlocks: Remove unused MERGE_BLOCKS action. (59125)

Typography

  • Remove Gutenberg font face tests. (59402)

Site Editor

  • Global styles: Rename typography elements file. (59355)

Synced Patterns

  • Remove unneeded pattern overrides translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. strings. (59269)
  • Revert removal of Nav fallback auto embed. (59220)

Tools

Testing

  • Add a fixture for the wp/block pattern block current version with overrides. (59492)
  • E2E: Refactor setup method to support class inheritance in RequestUtils. (59362)
  • Migrate ‘autosave’ end-to-end tests to Playwright. (58171)
  • Playwright: Pass the payload to createPost in data instead of query params to avoid URI too long errors. (59463)
  • Restore patterns end-to-end tests. (59024)
  • Rich text: Run end-to-end tests in Firefox and Webkit. (56030)
  • Writing flow: Add multi select end-to-end test for firefox and webkit. (53513)

Build Tooling

  • Project: Update the ‘.git-blame-ignore-revs’ list. (59615)

Security

Custom Fields

  • Block Bindings: Don’t show protected fields that are bound to blocks. (59326)

First-time contributors

The following PRs were merged by first-time contributors:

Contributors

The following contributors merged PRs in this release:

@afercia @ajlende @alanjacobmathew @andrewserong @annezazu @arthur791004 @bacoords @c4rl0sbr4v0 @carolinan @chad1008 @creativecoder @DAreRodz @dcalhoun @desrosj @draganescu @ellatrix @fluiddot @getdave @glendaviesnz @huzaifaalmesbah @inc2734 @jameskoster @jasmussen @jeryj @jorgefilipecosta @jsnajdr @juanfra @kevin940726 @madhusudhand @Mamaduka @matiasbenedetto @mattgrshaw @michalczaplinski @mikachan @mirka @ndiego @noisysocks @ntsekouras @oandregal @ockham @peterwilsoncc @pbking @ramonjd @retrofox @samueljseay @SantosGuillamot @scruffian @shail-mehta @SiobhyB @sirreal @sunil25393 @t-hamano @talldan @tellthemachines @TeresaGobble @torounit @tyxla @WunderBart @youknowriad

Props to @joen for visual assets and to @annezazu and @aaronrobertshaw for reviewing this post before publishing.

#block-editor, #core-editor, #gutenberg, #gutenberg-new