What’s new in Gutenberg 20.8 and 20.9?

We’re catching up with these posts now, as they have not been posted in a while. Since the recent releases have been smaller in scope, this post combines updates from both the 20.8 (May 14) and 20.9 (May 28) releases.

Both versions introduce a collection of enhancements, 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, and improvements. These updates concentrate on refining the editor experience, improving 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 ensuring consistent design. Additionally, the releases incorporate under-the-hood updates focused on code quality and performance.

  • 20.8 (14 May)
    • Prevent duplicate HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. main elements for improved accessibility.
    • Search functionality in template swapping modal.
    • Changelog
  • 20.9 (28 May)
    • Search 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.: Move search setting to inspector.
    • Move Styles to top of 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. navigation.
    • Changelog

20.8 (14 May) – Highlights

Prevent duplicate HTML main elements for improved accessibility.

The HTML Element option now includes validation to prevent duplicate <main> tags, enhancing accessibility and HTML compliance. (70002)

Screenshot of the editor, showing the advanced panel of a group block in the right sidebar with the new main tag warning.

Search functionality in template swapping modal.

The template swapping modal now includes a search feature for smoother navigation. (69667)

Screenshot of the template modal, the cursor is in the new search bar between the heading and the template previews.

Changelog

Enhancements

  • Create Block: Add --textdomain flag to create block tool. (69802)

Components

  • Guide: Make next and previous button text customizable. (69907)
  • Popover: Add virtual padding to prevent it from hitting the viewport edge. (69555)

Document Settings

  • Editor: Add search functionality to template swapping modal. (69667)

Block Editor

  • WidgetWidget A WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. Editor: Don’t close the inserter when focusing outside it. (67838)

Editor

  • Use split view for 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 only when canvas is iframed and “Desktop” view. (69958)

New APIs

Widgets Editor

  • Edit Widgets: Save lock control via actions. (69984)

Bug Fixes

  • 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 by the repository owner. https://github.com/ Actions: Fix components changelog CI check. (70034)
  • Persist git credentials when publishing via lerna. (70007)
  • 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.: Fix deprecation for ‘apply_block_hooks_to_content_from_post_object’. (69909)
  • ServerSideRender: Don’t render the previous error response in loading state. (69988)
  • ServerSideRender: Refactor fetchData to use useCallback and refs. (69237)

Block Library

  • Author, Author Name block: Fix PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher warning error when there is no context. (69949)
  • Block Editor: Allow editing 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. blocks as HTML. (69902)
  • Block Editor: Prevent negative width values in Spacer block when used inside a row block. (68845)
  • Calendar block: Disable edit as HTML support. (69961)
  • Image: Avoid stale URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org when reselecting the same image from the library. (69985)
  • Latest Posts: Update content display labels to Display post content and Content length. (69839)
  • Navigation Link, Navigation Submenu: Fix undefined key warning. (69951)
  • fix: Update the logic of fetching current URL in loginout block. (70031)

Block Editor

  • Block HTML: Add box-sizing property to prevent overflow. (70014)
  • Fix: Improve warning message and add spacing in HTMLElementControl. (70002)
  • MediaPlaceholder: 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. with media URL input type to allow a local URL path. (70043)
  • Prevent block merging on blocks with the ‘disabled’ editing mode. (69918)

Components

  • Don’t mutate ‘ALL_CSS_UNITS’ default value in ‘useCustomUnits’. (70037)
  • Fix double border in ItemGroup when last item is focused. (70021)
  • Fix: Duotone unset button. (69981)
  • ToggleGroupControl: Fix active background for empty string value. (69969)

Site Editor

  • Check user permissions before rendering export menu item. (69971)

Widgets Editor

  • Fix: Browser Warnings when closing keyboard shortcut modal. (69929)

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.

  • Fix: Missing conversion from 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. styled variable to CSSCSS Cascading Style Sheets. variable. (69551)

Typography

  • Fix: Prevent FontSizePicker crash when no font size exists. (68733)

Icons

  • Remove width / height attributes from svg element. (43747)

Accessibility

  • Keyboard Shortcuts: Revert delete shortcut to access + z. (69931)

Block Library

  • Add new HTMLElementControl component. (69904)

Performance

Block Library

  • Latest Posts: Delay inspector control queries until the block is selected. (69898)
  • Latest Posts: Embed author in response. (69889)

Document Settings

  • Lazy load post authors’ data. (69950)

Documentation

  • Add WP version note for ‘setAttributes’ updater function. (69972)
  • Create Block: Add --textdomain in create-block README. (69927)
  • Docs: Add post meta limitations to Block Bindings API documentation. (68583)
  • Docs: Added copy and code for style_data. (69920)
  • Fix missing CSS import in data basics tutorial code. (69914)
  • Fix typos. (69957)
  • Fix: Remove an unnecessary @return 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.) from this 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. docblockdocblock (phpdoc, xref, inline docs). (69960)

Code Quality

  • ServerSideRender: Use useLayoutEffect to update latestPropsRef. (69999)
  • Stylelint: Migrate configuration from JSON to JavaScript format. (69590)
  • theme.json: Unify property order. (70033)

Themes

  • Simplify color specifications from rgba to rgb. (70008)

Block Editor

  • Simplify condition selectors for ‘useHasBlockToolbar’. (69930)

Block Library

  • Latest Posts: Only fetch necessary fields for categories. (69888)

Components

  • ColorPicker: Add tests for ColorPicker Alpha slider. (69203)

Tools

Testing

  • Automated Testing: Skip storybook smoke test. (69943)
  • List View: Add end-to-end test to verify pasting block styles via keyboard. (69979)
  • Try: Fix ‘wp-polyfill’ script dependents 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.. (69912)
  • Workflows: Try different SHA. (70048)

First-time contributors

The following PRs were merged by first-time contributors:

  • @jrmd: Block Editor: Prevent block merging on blocks with the ‘disabled’ editing mode. (69918)
  • @Maikuolan: Navigation Link, Navigation Submenu: Fix undefined key warning. (69951)

Contributors

The following contributors merged PRs in this release:

@bph @Debarghya-Banerjee @georgestephanis @himanshupathak95 @im3dabasia @Infinite-Null @johnbillion @jrmd @karthikeya-io @Maikuolan @Mamaduka @Mayank-Tripathi32 @Rishit30G @SH4LIN @shimotmk @stokesman @Sukhendu2002 @t-hamano @yogeshbhutkar


20.9 (28 May) – Highlights

Search Block: Move search setting to inspector.

The settings of the search block have been moved from the block toolbar to the inspector panel for better consistency with other coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. blocks. (70144)

Move Styles to top of sidebar navigation.

Move the Styles navigation item to the top position in the Site Editor’s main sidebar navigation, before Navigation, Pages, Templates, and Patterns. (68582)

Changelog

Enhancements

  • Base Styles: Update to modern Sass module system. (70135)
  • Post Publish Panel: Open view post links in a new tab. (70127)
  • Revert Adminadmin (and super admin) bar: Update the Edit Site link. (69974)

Block Library

  • Custom HTML: Add role attribute to content in block.json. (70154)
  • HTML Block: Remove space below textarea. (70055)
  • Post Navigation Link: Reverse order of variations. (70149)
  • RSS: Add role attribute to content in block.json. (70166)
  • Search Block: Move search setting to inspector. (70144)

Write mode

  • Details block: Add role attribute to summary. (70124)
  • Enable Code block content editing in contentOnly. (70111)
  • Enable More block’s “Read more” text editing in contentOnly mode. (70100)
  • Post blocks: Enhance contentOnly editing experience. (70148)
  • Table Block: Enhance contentOnly Editing Experience. (70114)

Components

  • ColorPicker: Add a visual cue when the value is copied. (70083)
  • Snackbar: Add support to open links in new tab. (69905)

Block Transforms

  • Block Library: Add missing transforms between Verse and Preformatted blocks. (70101)

Global Styles

  • Remove “global” from styles variation in schema descriptions. (70089)

Site Editor

  • Move Styles to top of sidebar navigation. (68582)

Bug Fixes

  • DOM: Add summary element to focusable elements. (70051)
  • Site Editor: Fix PHP warnings in gutenberg_get_site_editor_redirection. (70062)
  • URL: Handle HTML entities and ampersand in ‘cleanForSlug’. (70078)
  • Workflows: Persist git credentials when publishing packages via Lerna. (70058)

Block Library

  • Button: Limit scope of width style for link. (70054)
  • Image: Provide ‘defaultValue’ for ‘ResolutionTool’ component. (70122)
  • Post Template: Don’t rely on the default ‘ignore_sticky’ 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/ value. (70020)

Components

  • Fix Styling for TextControland TextAreaControl in dark themes. (69640)
  • Fix URLPopover input handling to properly update value. (70156)

Post Editor

  • Editor: Honor rich/code editor settings when deriving the editor mode. (70080)
  • Hide “Create template part” menu from block settings dropdown for classic themes. (65568)

Block Editor

  • MediaPlaceholder: Fix potential error in ‘handleBlocksDrop’. (70090)

Accessibility

  • Editor: Add label inTextareaControl in CollabSidebar. (70133)

Global Styles

  • Background Image Panel: Fix focus loss. (69813)
  • Move Randomize colors button to Edit Palette panel. (70128)

Documentation

  • Add example doc comment. (70116)
  • Docs: Clarify versions in WordPress page title. (70112)
  • Docs: Fix PEG.js link. (70082)
  • Docs: Interactivity API Block removed. (69513)
  • Modify the spinner example code. (70084)
  • Popover: Update Popover component documentation. (70106)
  • RichText Readme – Fix 404 URL To Mozilla documentation. (70171)
  • Updated backticks to quotes. (70070)

Code Quality

  • ServerSideRender: Colocate delayed spinner logic. (70147)
  • Stylelint: Customise warning for CSS variables used outside components package. (70108)
  • Stylelint: Customise warning message for flex-direction warning. (70057)

Block Library

  • Blocks: Remove TODO for post comment block conversion. (70110)

Components

  • withIgnoreIMEEvents: Update documentation for clarity. (70098)

Font Library

  • Fix missing trailing period in user message. (70132)

Tools

Build Tooling

  • Workflows: Add option for publishing the latest npm packages. (70079)

Testing

  • end-to-end Tests: Add test suite for columns block template lock. (69089)

First-time contributors

The following PRs were merged by first-time contributors:

Contributors

The following contributors merged PRs in this release:

@carolinan @himanshupathak95 @igorradovanov @im3dabasia @Infinite-Null @jasalt @karthikeya-io @Mamaduka @Mayank-Tripathi32 @peterwilsoncc @SainathPoojary @shimotmk @SirLouen @StevenDufresne @Sukhendu2002 @t-hamano @unscripted @yogeshbhutkar


Props to @yogeshbhutkar and @luminuu for writing this post and @priethor and @cbravobernal for reviewing.

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

What’s new in Gutenberg 20.6 and 20.7?

We’re catching up with these posts now, as they have not been posted in a while. Since the recent releases have been smaller in scope, this post combines updates from both the 20.6 (April 3) and 20.7 (April 22) releases.

Both versions introduce a collection of enhancements, 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, and improvements. These updates concentrate on refining the editor experience, improving 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 ensuring consistent design. Additionally, the releases incorporate under-the-hood updates focused on code quality and performance.

  • 20.6 (3 April)
    • Navigation 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 transparency slider for submenu background.
    • Changelog
  • 20.7 (22 April)
    • Navigation in Site View: Automatically expand all options.
    • Editor: Enable starter pattern modal for all post types.
    • Changelog

20.6 (3 April) – Highlights

Navigation Block: Add transparency slider for submenu background

This PR adds the ability to set a transparent background for Navigation Block submenus by enabling the alpha (transparency) channel in the color picker for the submenu background setting. (69379)

Changelog

Enhancements

Block Library

  • Feature: Adding support for more granular controls over the ToC block. (69063)
  • Navigation Block: Add transparency slider for submenu background. (69379)
  • Query Total: Add interactivity.clientNavigation block support. (69661)
  • RSS Block: Add option to open links in new tab/window and control rel attributes. (69641)

Block Editor

  • Add keyboard shortcut (cmd(ctrl)+option(alt)+v) to paste styles. (69196)
  • BlockPatternsExplorer: Hide scrollbar from 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. if not scrollable. (69706)

Post Editor

  • Editor: Revert new default rendering mode for Pages. (69680)

Bug Fixes

  • BlockBreadcrumb: Wrap text node in span 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.). (69605)
  • Fix Media & Text block preview alignment on larger devices. (67097)
  • Format Library: Ensure inline image with updates persist after removing the ‘width’. (69683)
  • Include blocks manifest build process in Webpack configuration to fix create-block bug with missing blocks manifest file. (69578)

Block Library

  • 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. Block: Prevent default action on image click to fix linking to post. (69716)
  • Fix CategoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. List Block: Add optional chaining to taxonomyTaxonomy A taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies. name. (69703)
  • Fix(embed-block): Only call setAttributes() when attrs change. (68141)
  • Fix: Correct ‘Displaying 1 – 0 of 0’ issue when no results are found. (69666)
  • Image block: Omit max width observer element in galleries. (69601)
  • PostCommentsForm: Fix submit button width 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.. (69651)

Components

  • ComboboxControl: Replace undefined variable usage with color-mix for disabled selection. (69621)
  • CustomSelectControl: Use dynamic fill color for check icon. (69626)
  • Fix autocomple UIUI User interface flicker when deleting trigger prefix. (69562)
  • Update NumberControl stepping to match HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. number input stepping. (34566)

Block Editor

  • LinkControl: Fix visually Duplicative label and placeholder. (69620)
  • PatternsExplorerModal: Fix empty patterns in starter content category. (69629)

Post Editor

  • Post Template Panel: Render create-new-template-modal over post-template-panel. (69713)

Global Styles

  • Site Editor: Make the text “Custom Styles” translatable. (69677)

Site Editor

  • Set IFRAME_REQUEST constant for classic theme site preview. (69535)

Document Settings

  • PostStatus: Prevent form submission from refreshing the page. (69526)

Accessibility

Document Settings

  • Post Template Panel: Preserve parent modal when closing template creation dialog. (69724)

Block Library

  • Site Title: Prevent saving and rendering a value made of only spaces. (69628)

Block Editor

  • Fix shift+tab from post title. (69520)

Components

  • Global Styles: Prevent Unwanted ItemGroup List Rendering in Border Panel. (68633)

DataViews

  • Display Checkbox by default in dataviews. (67874)

Performance

Block Library

  • Image: Don’t subscribe to current post changes. (69630)
  • Navigation Link: Don’t check validity when block editing is disabled. (69627)
  • Navigation Link: Improve performance by only requesting entities when selected. (69633)
  • Navigation Link: Optimize ‘getBlockParentsByBlockName’ selector call. (69631)

Documentation

  • Developer Documentation: Update VS Code settings in the contribution guide. (69670)
  • Editor: Clarify icon prop behavior in README. (69672)
  • Fix: Missing comma in DataView documentation example. (69721)
  • Modify the AnglePickerControl example code. (69673)
  • Modify the RangeControl example code. (69591)
  • Reference splitTask from interactivity package in documentation. (69602)
  • Storybook: Update ToolbarItem and ToolbarDropdownMenu exports. (69618)
  • Update the list of 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/ versions in WordPress versions. (69700)
  • scripts: Fix broken changelog link. (69654)

Code Quality

Components

  • Component: Extract getNodeText to its own file and add unit tests. (69135)
  • Fixed broken className test for NumberControl. (69540)

Post Editor

  • PreviewDropdown: There’s no need to unlock the ‘getRenderingMode’ selector. (69682)

Font Library

  • FontLibraryModal: Remove temporary margin-bottom override. (69674)

Site Editor

  • Update old URLs to new path-based URLs. (69585)

Tools

Testing

  • Fix end-to-end and performance tests. (69690)
  • Fix flaky Typewriter end-to-end test. (69623)
  • Refactor ‘Template hierarchy’ end-to-end tests. (69692)
  • Upgrade Playwright to v1.51.1. (69622)
  • e2e: Fix taxomomies test. (69723)

Build Tooling

  • Fix Tests: Update browserslist and caniuse-lite to latest versions. (69669)

First-time contributors

The following PRs were merged by first-time contributors:

  • @gmovr: Feature: Adding support for more granular controls over the ToC block. (69063)
  • @im3dabasia: Fix Media & Text block preview alignment on larger devices. (67097)

Contributors

The following contributors merged PRs in this release:

@bph @chrisbellboy @dhruvikpatel18 @felixarntz @gmovr @himanshupathak95 @im3dabasia @Infinite-Null @karthick-murugan @Mamaduka @Mayank-Tripathi32 @Rishit30G @SainathPoojary @shimotmk @Sourav61 @StevenDufresne @stokesman @t-hamano @westonruter @yogeshbhutkar


20.7 (22 April) – Highlights

Navigation in Site View: Automatically expand all options.

This PR changes the default state of navigation submenus in Site View from collapsed to expanded, making all navigation options immediately visible to users without requiring manual expansion. (69343)

Editor: Enable starter pattern modal for all post types.

This PR fixes the starter pattern modal so it works for all post types, not just pages. It removes the restriction that was limiting the modal to only appear when creating new pages. (69753)

Changelog

Enhancements

  • Format Library: Add a feature to set the alpha value to Highlight. (67525)
  • Playwright end-to-end utils: Add new emulateNetworkConditions helper. (69865)

Block Library

  • Details: Enable all non-interactive formats. (68741)
  • Heading: Add/correct typography examples. (69812)
  • Navigation in Site View: Automatically expand all options. (69343)
  • Remove experimental status from comments count and comment link blocks. (69832)
  • Table Block: Preserve Column Alignment when Pasting Markdown Tables. (69322)
  • Tag Cloud: Remove unnecessary full-width padding. (69725)

Block Editor

  • Remove truncation from media tab preview tooltips. (69741)
  • Support passing updater function to ‘setAttributes’. (69709)

Media

  • Remove @shopify/web-worker Dependency from packages/upload-media. (69816)

Bug Fixes

  • DataViews: Ensure consistent display of primary ellipsis in list layout. (69846)
  • Scripts: Fix blocks manifest generation when directory name has space. (69766)

Block Library

  • Enhance Featured Image Block: Don’t include interactive elements within an element. (69730)
  • Featured Image: Don’t render empty Resolution tools panel if media is not set. (69805)
  • Fix: Background wrapper for ‘Button Inside’ option. (69624)
  • Fix: Update the static text and make them translatable in the Blocks example. (69859)
  • Fixed Media & Text Block – Image not rendered properly on frontend when inside stack. (68610)
  • 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 overwrite the ‘query.inherit’ attribute value. (69698)
  • Query Loop: Fix ‘undo trap’ and improve debouncing for ‘Keyword’ control. (69845)
  • ToC: Fix condition for ‘Limit heading levels’. (69811)
  • ToC: Fix related block attribute persistence. (69734)

Block Editor

  • Block Tools: Prevent showing block toolbar when block interface is hidden. (69795)
  • Block drag & drop: Enable mouse click on input/textarea elements in Firefox. (69781)
  • Fix: Restore static properties on deprecated __experimentalLinkControl. (69860)
  • Fix: Space visualizer showing previous value. (69747)

Post Editor

  • Fix: Save custom template with non-latin slug. (69732)
  • 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.: Don’t enable for block themes in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. if v2 blocks exist. (69778)

Document Settings

  • PostPublishPanel: Fix post title overflow. (69804)

Patterns

  • Editor: Enable starter pattern modal for all post types. (69753)

Components

  • UI Components: Add theme support for FormTokenField and ComboboxControl. (69638)

Accessibility

  • DataViews: Always show primary action for list layout if hover isn’t supported. (69876)

Block Library

  • Navigation Link, Navigation Submenu: Remove the title attribute controls. (69689)
  • Navigation block: Fix submenu Escape key behavior. (69837)
  • Social Icons: Remove custom placeholder state. (69821)

Components

  • Button: Update hover styles to account for pressed state for tertiary button. (68542)
  • Global Styles: Fix incorrect usage of ItemGroup in the Background image panel. (68631)

DataViews

  • ActionModal: Add support for customisable focusOnMount. (69609)

Documentation

  • Add WithCloseHandlers story. (69688)
  • Create Block: Improve support for blocks manifest and relevant Core APIs. (69767)
  • Docs: Improve document and parameters in render_block_core_* function. (69856)
  • Fix: Incorrect Type of wp_widget_factory in render_block_core_legacy_widget Doc Block. (69775)
  • Fix: Expose TypeScript types for subcomponents. (69619)
  • Latest Posts block: Add missing @global PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher documentation. (69763)

Code Quality

  • Block Parser: Remove description for singular since tag. (69799)
  • Fix Documentation inconsistencies in Block Parser classes. (69785)
  • Stylelint-config: Add stylelint-scss as a peer dependency. (69685)

Block Library

  • Query Loop: Remove unused ‘Columns’ control. (69843)
  • Search: wp-block-search__inside-wrapper classname trailing spaces. (69405)
  • Social Icons: Fix effect dependencies. (69824)
  • Social Icons: Remove unused editor style. (69836)

Block Directory

  • Update metadata fields requested from server. (69801)

Components

  • Update gradient-parser dependency from 0.1.5 to 1.0.2. (69783)

Tools

Testing

  • Automated Testing: Add 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 by the repository owner. https://github.com/ Actions workflow for Storybook smoke testing. (69679)
  • E2E: Split list view keyboard shortcuts into multiple tests. (69231)
  • Workflows: Ignore ‘widgets’ for manual backports. (69792)

Build Tooling

  • Workflows: Ignore ‘block-serialization-default-parser’ for manual backports. (69791)

First-time contributors

The following PRs were merged by first-time contributors:

Contributors

The following contributors merged PRs in this release:

@carolinan @Debarghya-Banerjee @dhruvikpatel18 @dilipbheda @himanshupathak95 @im3dabasia @Infinite-Null @jonathanbossenger @karthikeya-io @Mamaduka @Mayank-Tripathi32 @Rishit30G @SainathPoojary @shimotmk @snehapatil2001 @stokesman @Sukhendu2002 @swissspidy @t-hamano @timse201 @yogeshbhutkar


Props to @priethor and @cbravobernal for reviewing this post.

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

What’s new in Gutenberg 20.4 and 20.5?

We’re catching up with these posts now, as they have not been posted in a while. Since the recent releases have been smaller in scope, this post combines updates from both the 20.4 (March 5) and 20.5 (March 20) releases.

Both versions introduce a collection of enhancements, 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, and improvements. These updates concentrate on refining the editor experience, improving 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 ensuring consistent design. Additionally, the releases incorporate under-the-hood updates focused on code quality and performance.

  • 20.4 (5 March)
    • Persist the user’s ‘Show Template’ preference in the editor
    • 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 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. now supports sorting posts by menu order
    • Changelog
  • 20.5 (20 March)
    • The create-block package now supports blocks manifest and relevant CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. APIs by default
    • Changelog

20.4 (5 March) – Highlights

Persist the user’s ‘Show Template’ preference in the editor

The editor now remembers the ‘Show Template’ preference set by the user and uses it as the default rendering mode. (69286)

Query Loop Block now supports sorting posts by menu order

The Query Loop block now lets users sort posts by their menu order, in both ascending and descending order, for post types that support it. (68781)

Changelog

Enhancements

  • Generate built CSSCSS Cascading Style Sheets. file containing the adminadmin (and super admin) color theme CSS custom properties. (69128)

Post Editor

  • Editor: Conditionally enable the new default rendering mode for Pages. (69160)
  • Editor: Persist user’s ‘Show Template’ preference. (69286)
  • Editor: Restore starter content modal. (69081)
  • Post Template Panel: Display popover on the left side of 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.. (69134)

Block Library

  • Post Navigation Link: Enable all non-interactive formats. (69325)
  • Pullquote: Adding missing alignment style. (68121)
  • Query Loop: Add menu_order as sorting option. (68781)

Site Editor

  • Enhance 404 message styling. (69234)

Media

  • Media Utils: Restrict file uploads with multiple prop in uploadMedia and mediaUpload. (69175)

Components

  • BorderControl: Always show Reset button. (69066)

Block Editor

  • Block Action: Implement cut functionality in block actions and settings menu. (68554)

Global Styles

  • Allow :Focus-visible pseudo-selector to be set 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.. (68521)

Design Tools

  • Post Comments Count: Add Border Support. (68223)

Bug Fixes

  • Core Data: Allow ‘null’ as raw attribute value. (69257)
  • Dataviews: Fix alignment issue of “Title” column 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.. (68840)
  • Fix addQueryArgs and removeQueryArg on URLs with fragments. (69313)
  • Post formats: Make title and description human readable. (69275)
  • Site Editor: Fix back link from “Navigation” sub-menus in mobile web. (69192)
  • TextControl: Fix text direction for URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org and email fields in block editor for RTL languages. (68561)

Block Library

  • Fix: Extra top and bottom margin issue in Social Link block for classic theme below twenty twenty. (69100)
  • Make navigation block wavy underline more visible on dark backgrounds. (69004)
  • Template Part block: Guard against get_block_file_template returning null. (69309)
  • Video Block: Disable autoplay when video is not muted. (69232)

Post Editor

  • Editor: Add an extra check before enabling the new default rendering mode for Pages. (69209)
  • Editor: Avoid a ‘flash’ when rendering in ‘template-locked’ mode. (69173)
  • Editor: Revert bulk editing support for post actions. (69341)

Site Editor

  • Fix space on the left or right of the menu in mobile view. (69327)
  • Show pattern categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. step in navigation for mobile. (69206)
  • Site Hub: Navigate correctly in mobile view. (69157)

Components

  • Notice: Fix text contrast for dark mode. (69226)
  • NumberControl: 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. HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. attributes for infinite bounds. (69033)

Colors

  • Format Library: Prevent the text and color picker from overlapping. (69169)
  • Format Library: Text-color popover width to fit sidebar. (68881)

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.

  • iAPI Router: Revert “Handle styles assets on region-based navigation”. (69222)

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.

  • Fix typo for ‘ignore_sticky_posts’ 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/ support. (69171)

Block Editor

  • Inserter: Hide drag-and-drop help text on mobile devices when previewing patterns. (69159)

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.

  • Fix duplicated insertion in Post Content. (69142)

REST API

  • Adds the site reading options to the index. (69106)

Block API

  • Block support: Add server-side processing for ariaLabel. (69096)

Document Outline

  • Show heading blocks when template-lock is enabled. (69073)

Media

  • Improve display of error returned from the REST API when an unsupported image type is uploaded. (68788)

Accessibility

Components

  • Cover: Fix placeholder color options keyboard accessibility. (68662)
  • InputControl: Ensure consistent placeholder color. (69334)

Post Editor

  • Improve the EntitiesSavedStates modal dialog design and labeling. (67792)
  • Swap fullscreen mode snackbar notice message. (69305)

Patterns

  • Close patterns modal on insertion and focus on inserted pattern. (68975)

Block Editor

  • Fix CSS classes for the post 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. (68481)

Performance

Interactivity API

  • Introduce withSyncEvent action wrapper utility and proxy event object whenever it is not used. (68097)

Documentation

  • Added Missing Double Quote in Number Control. (69207)
  • Added Missing Global Documentation in Query Total Block. (69233)
  • Added php.net/date links. (69280)
  • Components: Fix typo for notice color in readme.md. (69204)
  • Docs: Add Documentation for Adding Block Variations Using get_block_type_variations Hook. (68434)
  • Docs: Removes notes about Block Hooks only supporting static theme elements. (65455)
  • Fix Syntax Issue in Documentation. (69166)
  • Fix typo incorrect article before “user interface”. (69168)
  • FontSizePicker: Fix FontSizePicker Storybook control type and improve documentation. (68936)
  • Update 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-in-the-block-editor.md – fix link. (62431)
  • docs: Correction in plugin-sidebar-0.md. (69268)

Code Quality

  • Fields: Avoid ‘useSelect’ warnings in the template component. (69344)
  • Remove unnecessary opacity override for Firefox placeholders. (69312)
  • Revert “Feature: Add navigation.isLoading state to core/router store (#67680)”. (69330)

Post Editor

  • Editor: Use a stable array ref as fallback value in ‘BlockVisibility’. (69288)

Site Editor

  • Test: Add end-to-end test for 404 page. (69272)

Tools

Testing

  • ESLint: Improve lint regex for preventing “toggle” word usage in translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. ready functions. (68958)
  • Media Utils: Add tests for new error behavior. (69215)
  • Performance Tests: Update method for creating sample content. (69210)
  • Tests: Fix preloading end-to-end test. (69228)
  • end-to-end Tests: Add Block Hooks Test Coverage. (69044)

Various

Plugin

  • ESLint: Add rule to prevent usage of the word ‘sidebar’ in translatable strings. (68894)

Post Editor

  • Update template-related messages to improve clarity for custom post types. (67722)

First-time contributors

The following PRs were merged by first-time contributors:

  • @alexchrysovergis: Fix typo incorrect article before “user interface”. (69168)
  • @andreawetzel: Components: Fix typo for notice color in readme.md. (69204)
  • @kellymears: docs: Correction in plugin-sidebar-0.md. (69268)

Contributors

The following contributors merged PRs in this release:

@adamsilverstein @afercia @alexchrysovergis @andreawetzel @benazeer-ben @carolinan @DAreRodz @davilera @fabiankaegy @felixarntz @himanshupathak95 @huubl @im3dabasia @Infinite-Null @jonathanbossenger @juanmaguitar @kellymears @Mamaduka @ockham @Rishit30G @SainathPoojary @shail-mehta @shimotmk @singhakanshu00 @snehapatil2001 @stokesman @Sukhendu2002 @swissspidy @t-hamano @yogeshbhutkar


20.5 (20 March) – Highlights

The create-block package now supports blocks manifest and relevant Core APIs by default

Blocks created using the create-block package now include a block manifest file by default, making it easier to manage metadata and improving performance when working with multiple block types. (69446)

Pre-publish panel: Do not show suggestions for tags and categories if there are none.

The conditions that determine if the pre-publish panel should show suggestions to add categories or tags have been updated if no categories or tags are added. (69453)

Changelog

Enhancements

  • Admin bar: Update the Edit Site link. (69271)
  • Enhance create-block package to support blocks manifest and relevant Core APIs by default. (69446)
  • Remove trailing periods from Show or hide settings panel. (69356)
  • Site Editor: Make current theme and editor settings available to route area resolvers. (69299)

Block Library

  • Button Block: Add draft page creation capabilitycapability A capability is permission to perform one or more types of task. Checking if a user has a capability is performed by the current_user_can function. Each user of a WordPress site might have some permissions but not others, depending on their role. For example, users who have the Author role usually have permission to edit their own posts (the “edit_posts” capability), but not permission to edit other users’ posts (the “edit_others_posts” capability).. (69368)
  • Query Total: Update the block color support settings. (69500)

Block Editor

  • BlockEditor: Resolve MediaReplaceFlow UIUI User interface text inconsistency. (69546)

Site Editor

  • Add period to Design description. (69537)

Post Editor

  • Pre-publish panel: Do not show suggestions for tags and categories if there are none. (69453)

DataViews

  • DataView Actions Modal: Allow customizable modal size through props. (69302)

Bug Fixes

Block Library

  • Archives Block: Fix showLabel default state. (69469)
  • Comment Template: Use fallback when there’s an HTTPHTTP HTTP is an acronym for Hyper Text Transfer Protocol. HTTP is the underlying protocol used by the World Wide Web and this protocol defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. error. (69422)
  • Fix: Show the author and author name examples in the Stylebook. (69436)
  • Image block: Unwrap img element in editor. (68666)
  • Latest Posts: Make Latest Posts block consistent with sticky posts display. (69428)
  • Query Total: Prevent stricted type fatal errors on post per page. (69508)
  • Social Icons: Disable edit as HTML support. (69374)
  • Spacer: Revert height defaults to 100px if left unset. (69450)
  • SpacerControls: Default the height to 100px if left unset. (68819)
  • Table Of Contents: Include headings exclusively within the core/post-content block. (69366)

Site Editor

  • Classic themes: Prevent access to parts of the Site Editor. (69473)
  • Hide admin bar in classic theme site preview. (69514)
  • Prevent access to the Design/Styles screen from classic themes without StyleBook support. (69377)
  • Show save panel in mobile layout. (69448)
  • Site Editor Sidebar: Fix header scrolling in mobile layout. (69413)

Global Styles

  • Shadow, Duotone: Fix reset button style. (69471)
  • ShadowsPanel: Remove Flex Wrapper from Subtitle. (69541)

Post Editor

  • Autocompleters: Change user slug color. (69003)
  • Editor: Fix ‘slug’ editing in ‘template-locked’ mode. (69516)

Document Settings

  • Editor: Use disabled state for ‘Change template’ menu item. (69558)

Style Book

  • Classic theme site preview: Make all interactive elements unclickable. (69522)

Document Outline

  • Disable selection for non-content headings. (69506)

Block Editor

  • Fix error from popover scroll hook. (69479)

REST API

  • Add additional default template data fields for the active theme. (69417)

Block Directory

  • Fix installations for ‘template-locked’ mode. (69394)

Layout

  • Layout Support: Replace incremental IDs with hashes. (68210)

Accessibility

Post Editor

  • Editor: Refactor the ‘PostVisibility’ component. (69451)
  • Make password protected input fields consistent. (69440)

Components

  • Button: Remove fixed width from small and compact buttons with icons. (69378)
  • Remove non translatable additional info from font size picker visual label and improve labeling. (69011)

Block Editor

  • ARIA: Fix invalid DropdownMenu children structure. (69441)

Block Library

  • Site Title: Fix logic for ‘aria-current’ attribute. (68909)

Performance

Post Editor

  • Editor: Optimize queries for ‘useAllowSwitchingTemplates’ hook. (69560)
  • Editor: Optimize selector queries for Homepage and Posts Page actions. (69461)
  • Editor: Preload template lookup. (69454)

Site Editor

  • Fix template lookup preloading for non-draft pages. (69400)

Experiments

  • Added Missing Trailing periods in Experiment Settings Page. (69395)

Documentation

  • Docs/update reference to JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. build setup 404 in scripts README, fix absolute links. (69495)
  • Fix: Update invalid JSON Schema link in README.md. (69505)
  • Update documentation about wp-scripts build-blocks-manifest in relation to new WordPress 6.8 function. (69445)

Code Quality

  • Alignment note with WordPress report 62426. (69519)
  • Core Data: Update ‘__unstableBase’ entity types. (69556)

Block Library

  • Audio Block: Refactor setting panel to use ToolsPanel. (69324)

Global Styles

  • Removed color.__experimentalDuotone from core blocks. (58241)

Tools

Testing

  • Restore post preview end-to-end tests. (69447)
  • Skip failing post preview end-to-end tests. (69429)
  • Template UI mu-plugin: Run 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. after the setup_theme action. (69542)

Various

Plugin

  • Update hierarchical data compat directory. (69550)

First-time contributors

The following PRs were merged by first-time contributors:

  • @Anuj-Rathore24: Fix: Update invalid JSON Schema link in README.md. (69505)
  • @bschneidewind: Site Title: Fix logic for ‘aria-current’ attribute. (68909)
  • @dontfeedthecode: Docs/update reference to JS build setup 404 in scripts README, fix absolute links. (69495)
  • @sabbir1991: Removed color.__experimentalDuotone from core blocks. (58241)
  • @SirLouen: Alignment note with WordPress report 62426. (69519)

Contributors

The following contributors merged PRs in this release:

@afercia @Anuj-Rathore24 @bschneidewind @carolinan @cbravobernal @DAreRodz @dhruvikpatel18 @dontfeedthecode @felixarntz @HILAYTRIVEDI @himanshupathak95 @im3dabasia @Infinite-Null @Mamaduka @sabbir1991 @SainathPoojary @shail-mehta @shimotmk @SirLouen @stokesman @t-hamano @yogeshbhutkar


Props to @yogeshbhutkar for writing the post and @luminuu and @bph reviewing it.

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

Editor Weekly Updates – March 10th – 23rd

Last week, there were some exciting developments in the 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/ Editor. Below, you’ll find an overview of the key changes and improvements.

  1. Need 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) Feedback
  2. Enhancements
  3. Need Design Feedback
  4. Bugs

Need Accessibility Feedback:

Enhancements:

Needs Design Feedback:

Bugs:

Thank you @benjamin_zekavica for helping in posting and adding details

#core, #editor-update, #gutenberg

Editor Weekly Updates: Mar 3 – Mar 7

What happened 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/ during the first week of March 2025? Below, you’ll find an overview of the key changes and improvements.

A special thanks goes to @krupaly2k for collecting all the topics!

Need Design Feedback:

Enhancements:

Feedback:

  • Query total: It is confusing that the editor and front does not match – When I inserted this block, I thought I was seeing a 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. introduced by the changes to the query in WordPress 6.8.
  • Query total: The icons are confusing – When I inserted this block I honestly did not even understand that there was an option in the toolbar.

Need Decision:

Bug:

Thanks to @krupaly2k for helping to create this post and @benjamin_zekavica for the review

#6-8, #core, #editor-update, #gutenberg

Editor Weekly Updates: Feb 24 – Mar 2

Last week, there were some exciting developments in the 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/ Editor. Below, you’ll find an overview of the key changes and improvements.

A special thanks goes to @krupaly2k for his excellent compilation of all the topics from the Gutenberg development team.

Enhancementenhancement Enhancements are simple improvements to WordPress, such as the addition of a hook, a new feature, or an improvement to an existing feature. ✨

Bug 🐛

  • Block Directory: Issues in installing blocks from Inserter – When debugging the the issue #69315 found that when installing a block from inserter and then saving the post the block 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. doesn’t install and block disappears.

Thanks to @krupaly2k for helping to create this post.

#6-8, #core, #editor-update, #gutenberg

What’s new in Gutenberg 20.3? (18 February)

Gutenberg 20.3 is out of the oven and ready to download.

As with most releases since 20.0 this release has also primarily been focused on fixing bugs. But of course there are still always some features that join the mix.

Highlights

Ignore sticky posts in 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

The query loop 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. now has a new option to ignore sticky posts. When selected, the query block ignores whether or not a post has the sticky option enabled. So, all posts show based on the sorting preferences selected without taking the sticky status into account.

Add social icon block variation for discord

The social icons block now ships with the option to add a Discord icon.

Changelog

Enhancements

Block Library

  • Query block: Add option to ignore sticky posts behavior. (69057)
  • Added discord in social links. (68848)
  • 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. block: Use resolution tool component. (68471)
  • RSS: Border & Spacing support. (66411)

Global Styles

  • Disable Clear button if there’s no shadow. (69092)
  • Duotone Settings: Add reset button and improve toggle rendering in FiltersPanel. (68672)
  • Shadow Panel: Add reset button. (68981)

Post Editor

  • Editor: Add loading state to the ‘PageAttributesParent’ component. (69062)
  • Editor: Add loading state to the ‘PostAuthorCombobox’ component. (68991)
  • Editor: Display error message when loading current post fails. (68999)

Block Editor

  • Quick Inserter: Restore pattern search and insertion. (69028)
  • Update keyboard shortcuts to use primaryShift+backspace for block deletion. (69074)

Design Tools

  • Archives: Add Color Support. (68685)
  • Categories: Add Color Support. (68686)

Components

  • ComboboxControl: Add an isLoading prop to show a loading spinner. (68990)

Bug Fixes

  • Exclude Iterator helpers from polyfills. (69070)
  • Fix Dependabot ignore statements. (69144)

Block Editor

  • Block popover: Fix scrolling over. (68075)
  • Display root appender when default block is disabled. (68951)
  • 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. for root appender logic. (68994)
  • Inserter: Remove block default icon from no results message. (68693)
  • Rename aspect property to ratio to carry the defaultAspect in AspectRatioDropdown. (69085)
  • Writing Flow: Restore early return for no block selection in tab nav hook. (69079)

Site Editor

  • Edit Site: Fix Fields package private APIs error. (68964)
  • Fix: Site Editor should display a 404 message. (69009)
  • Use the same editor component for all routes. (69093)
  • Disable hover animation on preview frame for classic themes. (68976)

Global Styles

  • Fix: Additional CSSCSS Cascading Style Sheets. button not working after back navigation. (68954)
  • Fix: Missing ‘No blocks found.’ message for block search in editor. (69036)

Block Library

  • Query Block: Fix ‘parents’ argument validation. (68983)
  • Social Links: Fix appender size 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. (68215)

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/

  • Add support for the ‘ignore_sticky_posts’ argument. (68970)
  • Fix: Prevent Errors in 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. Processing and Encode URLs Properly. (67780)

Icons

  • Fix the background, arrowUpLeft, keyboardReturn and square icons. (69076)

Font Library

  • Refactor font variant components to use useId for checkbox IDs. (69050)

Block Directory

  • Remove block icon from InstalledBlocksPrePublishPanel. (69046)

DataViews

  • Fixed: Empty Pattern Overlap in Pattern Title in Dataviews Table Layout. (68997)

Media

  • Add optional chain to sizes indexing of media details in edit-site. (68995)

CSS & Styling

  • Enabled Full height in Additional CSS. (68993)

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.

  • Fix truncation of post content. (68926)

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.

  • iAPI Router: Fix CSS rule order in some constructed style sheets. (68923)
  • iAPI Router: Revert “Handle styles assets on region-based navigation” (69222)

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)

Components

  • Font Size Picker: Remove Custom option from FontSizePickerSelect dropdown. (69038)

Global Styles

  • Add missing list role to the list of blocks in the global Styles. (69027)

Block API

  • Block support: Preserve aria-label value in comment delimiter. (69002)

Block Editor

  • [Block Editor]: 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) – Add and Update missing reduce-motion mixing. (68417)

Performance

Post Editor

  • Editor: Don’t use selector shortcuts for the taxonomyTaxonomy A taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies. queries. (68998)
  • Editor: Optimize ‘PostAuthorCheck’ component data selection. (69105)

Style Book

  • Improve StyleBook resize responsiveness for Classic Theme. (68980)

Documentation

  • Added Missing Global Documentation. (69104)
  • Changed Inline Document Order. (68992)
  • wp-env: Add lifecycleScripts to the schema. (68724)

Code Quality

  • CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Data: Add type for term entity. (69151)
  • iAPI Router: Add missing changelog entry for #68923. (68945)

Block Library

  • E2E: Add regression test for spacer block in themes without spacing units. (68913)
  • Navigation Link Block: Use stable variable for underline color styling. (68953)
  • Regenerate block fixtures. (68982)
  • Social Links: Remove redundant reduce-motion mixin. (69000)

Site Editor

  • Fast follow: Redirections of deprecated site editor URLs. (68971)
  • Quality: Remove unused props and styles from SidebarNavigationScreen. (68972)

Block Editor

  • Inserter: Remove unused no-results-icon styles. (69018)

Tools

  • PR Template: Suggest linking the issue. (68924)
  • Relocate changelog file for WP#6910 to 6.9 backports. (69068)

Build Tooling

  • Fix installing svn during deploys. (69047)
  • Remove react-native dependabot group. (69118)

Testing

  • e2e: Fix “add new” selector. (69111)

Various

  • Remove reactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org-native dependabot group – Take 2. (69122)

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.

  • Code Quality: Delete unused function from PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher Sync Issue generation script. (68947)
  • npm scripts: Use node -p instead of echo. (68946)

First-time contributors

The following PRs were merged by first-time contributors:

  • @benazeer-ben: RSS: Border & Spacing support. (66411)
  • @grgar: Add optional chain to sizes indexing of media details in edit-site. (68995)
  • @Gulamdastgir-Momin: Added discord in social links. (68848)
  • @Juzar10: Fix: Prevent Errors in Header Processing and Encode URLs Properly. (67780)
  • @singhakanshu00: Disable hover animation on preview frame for classic themes. (68976)
  • @srtfisher: wp-env: Add lifecycleScripts to the schema. (68724)

Contributors

The following contributors merged PRs in this release:

@adamsilverstein @afercia @akasunil @benazeer-ben @carolinan @DAreRodz @desrosj @ellatrix @grgar @Gulamdastgir-Momin @himanshupathak95 @Infinite-Null @joemcgill @Juzar10 @Mamaduka @Mayank-Tripathi32 @ockham @peterwilsoncc @Rishit30G @SainathPoojary @shail-mehta @shimotmk @singhakanshu00 @srtfisher @swissspidy @t-hamano @torounit @yogeshbhutkar


Props to @joemcgill for helping with the actual release and @benjamin_zekavica for helping review this post

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

Editor Weekly Updates: Feb 17–21

Last week, there were some exciting developments in the 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/ Editor. Below, you’ll find an overview of the key changes and improvements.

A special thanks goes to @krupaly2k for his excellent compilation of all the topics from the Gutenberg development team.

Need Design Feedback 🎨

  • [List View] Always open List View: disable sidebar animation when preference is enabled – When the ”Always open List View:’ preferences are enabled, 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. animation on first page load is a very distracting and unexpected experience.
  • PR – [Background Image Control] – Added placeholder for background images – This PR ensures that when a Group has no background image, the placeholder (grey crossed-out circle) is displayed alongside the “Add background image” text.

Need Testing 🧪

Need discussion 🤔

  • Spacer: Add background color support – Add the background-color design tool to the Spacer 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.

Enhancementenhancement Enhancements are simple improvements to WordPress, such as the addition of a hook, a new feature, or an improvement to an existing feature. ✨

Thanks to @krupaly2k for helping to create this post.

#6-8, #core, #editor-update, #gutenberg

What’s new in Gutenberg 20.1 and 20.2?

This time, due to the smaller sizes of the releases, this post contains information for both the 20.1 (22 January) and 20.2 (5 February) releases.

“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 20.1 and 20.2 have been released and the latest is available for download!

Although both releases were smaller in size, they contain many useful enhancements, bugfixes and more. Apart from the highlighted changes, work continued on updating 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. settings to use the ToolsPanel. Both updates ship with 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) updates as well.

  • 20.1 (22 January)
    • Content preview for pages in DataViews
    • Menu name shown in list view
    • Color pickers in Navigation, Social Icons and Post 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. get Clear control
    • Changelog
  • 20.2 (5 February)
    • Content block: color options for headings added
    • Changelog

20.1 (22 January)

Content preview for pages in DataViews

The DataViews got enhanced by a new preview functionality to show the page’s content instead of the featured image, similar to patterns and templates. You can activate this feature in the settings and switch between featured image and content preview. This setting persists across all three views, table, grid and list. (67278)

Menu name shown in list view

In the list view, the name of a menu is now shown instead of the block name “Navigation”. If the menu is changed, the name is updated as well. (68446)

Color pickers in Navigation, Social Icons and Post Featured Image get Clear control

Previously, color options at the Navigation, Social Icons and Post Featured Image blocks did not have a Clear control to easily remove the color. This applies to every color option on these blocks. (68454, 68564, 68525)

Other Notable Highlights

Enhancements

  • ESLint: Improve regex for valid-sprintf rule to handle ‘%%’. (68270)
  • Simplify sprintf translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. for percentage widths. (68587)

Block Library

  • Archive Title Block: Refactor settings panel to use ToolsPanel. (67915)
  • Author Name: Refactor settings panel to use ToolsPanel. (67953)
  • Block Editor: Move state logic inside ‘BlockRenameModal’. (68560)
  • Details: Add allowedBlocks attributes. (68489)
  • Navigation: Add clearable option to color picker in navigation block. (68454)
  • Navigation: Surface menu name in the List View next to the Navigation block. (68446)
  • Page List: Added color support. (66430)
  • Query: Refactor settings panel to use ToolsPanel. (68008)
  • Social links block: Add Clear button for color option. (68564)
  • Table of Contents Block: Refactor settings panel to use ToolsPanel. (67964)

Design Tools

  • Post Comment Link: Show Border Controls By Default. (68506)
  • Query Total: Show Border Controls By Default. (68507)

List View

  • Use badge component for block anchors. (68566)

Template Editor

  • Editor: New default rendering mode for editor via post type supports. (68549)

Document Settings

  • Change “Swap” to “Replace” for Template Action. (68234)

DataViews

  • Add: Media field changing ui to Dataviews and content preview field to posts and pages. (67278)

Bug Fixes

  • CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Data: Check post-type support before requesting autosaves. (68680)
  • Fix text direction for URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org and email fields in block editor for RTL languages. (68188)
  • Try: Fix end-to-end tests ‘visitSiteEditor’ helper. (68534)

Block Library

  • Details block: Remove auto-close behaviour. (67766)
  • Fix File block resize glitches. (68372)
  • Navigation Link UIUI User interface: Remove onClose from onSelectBlock. (67760)
  • Post Featured Image: Adds control to clear the the overlay color. (68525)
  • Site Logo: Prevent uploading multiple images via drag and drop. (68618)
  • Social Links: Don’t prepend URL fragments. (68655)
  • 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.: Make example label for Comments Pagination Next block translatable. (68373)
  • i18n: Make example translatable in comments-pagination-previous. (68374)

Components

  • Duotone: Fix scrollbars displayed on Duotone Control. (67187)
  • Fix SCSS Media Query Compilation Issue in Storybook. (68464)
  • Fix icon condition for Badge. (68588)
  • Restore Non-Themed Text Colors for optimizeReadabilityFor. (68472)
  • StoryBook: Fix error that could occur when loading compiled CSSCSS Cascading Style Sheets.. (68526)

Site Editor

  • Classic theme preview: Remove adminadmin (and super admin)-bar class name. (68519)
  • Fix: Site Editor Template part is missing an icon 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.. (68653)
  • Navigation: Fix typo in history.navigation's function call. (68623)

Block Editor

  • Differentiate ‘Copy’ and ‘Copy styles’ snackbar confirmation messages. (68167)
  • Refactor: Separate input form styles to a dedicated stylesheet. (68501)
  • Update percentage strings to be translatable. (66323)

npm Packages

  • Fix irregular workspace version numbers. (68467)
  • Packages: Fix published * workspace dependencies. (68240)

Post Editor

  • Inline Commenting: Avoid querying comments when the experiment is disabled. (68632)

Colors

  • Color Gradients: Adjust max-width for color gradient swatch to accommodate reset button size. (68626)

Block Directory

  • Fix : Block Inserter Search Infinity Spinner. (68600)

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.

  • iAPI: Fix the logic path that merges plain objects. (68579)

Accessibility

  • Nux: Standardize reduced motion handling using media queries. (68423)

Block Library

  • Fix Inconsistent Labels for Lightbox Feature. (68261)
  • Site Logo: Prevent focus loss when updating media from the sidebar. (68621)
  • Standardize reduced motion handling with media queries. (68315)

Components

  • Fix usage of tooltip in the Circular option picker. (68602)

Post Editor

  • Edit Post: Standardize reduced motion handling using media queries. (68426)

Widgets Editor

  • Customize Widgets: Standardize reduced motion handling using media queries. (68425)

Block Editor

  • Remove unnecessary CSS order property for the contrast checker in the Color hook. (68055)

DataViews

  • Remove label from dataview checkbox. (67868)

Performance

  • Add npm script to profile TypeScript builds. (68533)

Post Editor

  • Editor: Update data selector in ‘PostPreviewButton’. (68678)

Documentation

  • Storybook: Add UnitControl story. (67346)
  • Add BlockIcon Storybook stories. (67186)
  • Added Global Documentation in inline documentation. (68613)
  • Block Card: Remove storybook for internal BlockCard component. (68556)
  • BlockInspector: Add showNoBlockSelectedMessage prop documentation. (68444)
  • Docs: Interactivity API – missing styles in the sample code. (66253)
  • Menu: Auto-generate README. (68249)
  • StoryBook: Add Story for ResolutionTool. (68292)
  • Storybook: Add TabbedSidebar stories and improve documentation. (68118)
  • Tabs: Remove unnecessary stories. (68463)
  • Updated Inline Document order. (68650)
  • Updated Small Typo in Feature-flags.md file. (68612)
  • Updated Typo in Document file. (68477)
  • docs: Fix type syntax in _gutenberg_add_block_template_plugin_attribute(). (68391)

Code Quality

  • Data Views: Standardize reduced motion handling using media queries. (68422)
  • Fix typos. (67304)
  • [core-data] Document and add types for dynamic actions and selectors. (67668)
  • docs: Fix param name in gutenberg_add_can_update_block_bindings_editor_setting(). (68390)
  • docs: Fix return type on gutenberg_register_block_module_id(). (68393)

Block Library

  • 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: Remove unused styles. (68615)
  • Site Logo: Remove unused argument for ‘mediaUpload’ function. (68617)

Global Styles

  • Remove unused prop for ‘BackgroundImageControls’. (68616)

Post Editor

  • Document Outline: Use block client ID as unique ‘key’. (68502)

Block Editor

  • BlockInspector: Remove unused ‘showNoBlockSelectedMessage’ prop. (68487)

Widgets Editor

  • Edit Widgets and Base Styles: Standardize reduced motion handling using media queries. (68427)

Components

  • Standardize reduced motion handling using media queries. (68421)

Block Directory

  • Standardize reduced motion handling using media queries #68419. (68420)

Site Editor

  • Edit Site: Add tsconfig.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. validation for package. (67406)

Tools

Testing

  • Check Storybook build on CI for PRs. (68466)
  • Fix flaky DataViews list arraow nav end-to-end tests. (68503)
  • Fix flaky navigation-frontend-interactivity end-to-end tests. (68667)
  • Site Editor: Fix “Quick Edit Mode” end-to-end tests. (68484)
  • Upgrade Playwright to v1.49. (68504)

Build Tooling

  • 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.: Remove ESLint rule for deprecated functions. (68590)

First-time contributors

The following PRs were merged by first-time contributors:

Contributors

The following contributors merged PRs in this release:

@afercia @AhmarZaidi @atachibana @benazeer-ben @carolinan @ciampo @dhananjaykuber @ellatrix @geriux @himanipanchal @himanshupathak95 @im3dabasia @Infinite-Null @jeryj @jorgefilipecosta @juanfra @justlevine @karthick-murugan @luisherranz @Mamaduka @manzoorwanijk @mirka @ramonjd @SainathPoojary @shail-mehta @shimotmk @sirreal @stokesman @Sukhendu2002 @szepeviktor @t-hamano @vipul0425 @Vrishabhsk @yogeshbhutkar

20.2 (5 February)

Content block: color options for headings added

Previously, it was only possible to change colors for text, background and link on the content block. With this update, the color of all headings and each individual heading level can be changed. (67783)

Other Notable Highlights

Enhancements

Block Library

  • Details block: Add name attribute for exclusive accordion. (56971)
  • Details block: Add placeholder attribute. (68917)
  • Home Link: Enable all non-interactive formats. (68737)
  • Latest Comments: Refactor settings panel to use ToolsPanel. (67951)
  • Latest Post Block: Refactor settings panel to use ToolsPanel. (67956)
  • Read More: Refactor settings panel to use ToolsPanel. (67925)
  • Search Block: Refactoring settings panel. (67907)
  • Search Results Title Block: Add dropdown menu props to Tools Panel component. (68763)
  • Spacer: Add dropdown menu props to Tools Panel component. (68761)
  • Term List Block: Refactor settings panel to use ToolsPanel. (67955)

Design Tools

  • Position: Refactor “Position” controls panel to use ToolsPanel instead of PanelBody. (67967)
  • Post-content block 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. color support. (67783)

Block Editor

  • Improve grid visualizer resize observation. (68842)

Style Book

  • Navigation Submenu Block: Add example preview. (68378)

Bug Fixes

  • 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. _doing_it_wrong() for experimental-link-color. (68408)

Block Library

  • Archives Block: Fix reset button display state. (68757)
  • Fix: Add rel="tag" to individual anchor links in editor markup of the post terms block. (68722)
  • Fix: Linked featured image block cannot be selected correctly. (68775)
  • Page List Block: Fix empty settings panel. (68756)
  • Post Date Block: Fix reset button display state. (68758)
  • Query Page Numbers Block: Fix reset button display state. (68759)
  • Spacer block: Fix dimension control when no spacing presets are available. (68818)
  • Spacer: Fix flex layout unit reset. (68815)
  • Spacer: Fix changes being marked as persistent to undo. (68869)

Patterns

  • Editor: Improve conditions for displaying new page assembler. (68852)

Style Book

  • Disable the device preview button in the header. (68841)

Block Editor

  • Fix block color contrast checker. (68799)

DataViews

  • Fixed Incorrect Text Position issue in Dataviews. (68767)

Block Transforms

  • Embed: Remove aspect ratio classes when transforming into Paragraph. (68721)

Media

  • Upload Media: Fix package dependencies. (68718)

Accessibility

Block Library

  • Navigation Link: Improve accessibility by removing non-interactive tooltips. (68628)
  • Use the term menu instead of navigation in nav elements labels. (68683)

Post Editor

  • Update text description of the “Contain text cursor inside block” preference. (68132)

Performance

Block Editor

  • Fix ‘isBlockVisibleInTheInserter’ selector helper performance. (68898)

Block Library

  • Paragraph: Use CSS to hide placeholders in Zoom out mode. (68690)

Documentation

  • Block Editor: Add documentation for SpacingSizesControl component. (68581)
  • Changed Inline Documentation Order. (68879)
  • Docs: Update links to HTTPSHTTPS HTTPS is an acronym for Hyper Text Transfer Protocol Secure. HTTPS is the secure version of HTTP, the protocol over which data is sent between your browser and the website that you are connected to. The 'S' at the end of HTTPS stands for 'Secure'. It means all communications between your browser and the website are encrypted. This is especially helpful for protecting sensitive data like banking information.. (68888)
  • Lint: Fix broken URL reference for stylelint user guide configuration. (68706)
  • Updated Typo in Constants.js. (68765)
  • Used https in main-dashboard-button.md file. (68883)
  • wp-env: Add phpMyAdmin and multisitemultisite Used to describe a WordPress installation with a network of multiple blogs, grouped by sites. This installation type has shared users tables, and creates separate database tables for each blog (wp_posts becomes wp_0_posts). See also network, blog, site support to the documentation. (68125)

Code Quality

  • Inline Commenting: Change the PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher compat directory. (68846)
  • Fix: Remove invalid param from wp_register_style() in gutenberg_enqueue_stored_styles(). (68409)
  • Fix: setcookie() $value must be string in Gutenberg_HTTP_Signaling_Server::Handle_read_pending_messages(). (68411)

Block Library

  • Gallery: Remove unused inline menu styles. (68776)
  • Move HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. element help messages to the block library utils. (68708)
  • Navigation Submenu: Classname trailing spaces. (68880)
  • Unify block title with a strict title case. (51912)
  • Video: 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 component warning error. (68762)

Post Editor

  • Editor: Children prop to accept ReactNode. (68839)
  • Editor: Combine selectors in the ‘Header’ component. (68697)
  • Editor: Standardize reduced motion handling using media queries. (68424)

Components

  • Box Control: Add Runtime Check & Conditional Types for presets and presetKey Props. (68385)
  • Remove unnecessary Tooltip component from linked button. (68498)

Block Editor

  • Clean up unused utils of spacing size control. (68794)

Template Editor

  • Editor: Update post-type support key for new default rendering mode. (68745)

Tools

Build Tooling

  • Fix Duplicate Entries for 19.7.0 in changelog.txt. (68836)
  • Release Workflow: Install Subversion. (68837)

Testing

  • E2E: Fix WP Editor 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 test. (68872)

Env

  • Add WP_ENV_MULTISITE envoriment variable. (68792)

Contributors

The following contributors merged PRs in this release:

@afercia @benazeer-ben @fabiankaegy @himanshupathak95 @im3dabasia @Infinite-Null @justlevine @karthick-murugan @Mamaduka @Mayank-Tripathi32 @SainathPoojary @shail-mehta @shimotmk @Soean @spacedmonkey @stokesman @Sukhendu2002 @t-hamano @yogeshbhutkar

Thanks to @fabiankaegy and @mamaduka for helping review this post.

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

What’s new in Gutenberg 20.0? (10 January)

This is 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/ 20.0, which means it’s the 200th release of 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..

It’s been almost exactly eight years since the initial commit to the Gutenberg repository and about four years since we celebrated the 100th release.

There is a lot happening in the WordPress world these days. But I want to use this moment to take a step back and just say thank you! Thank you to all the individual contributors that have spent countless hours over the past eight years steadily moving this project along. Whether you are still an active contributor, or you have long moved on to work on something else, thank you for all your work. ❤️


Even though this is the 200th release of the Gutenberg plugin, the actual release itself is the same as any other release in the past eight years. It includes new features, enhancements, and bugfixes. The remainder of this “What’s new in Gutenberg” post will follow the regular format.

The “What’s new in Gutenberg” posts (#gutenberg-new) appear on a biweekly basis after every Gutenberg release, and showcase the latest features and improvements. 

Interested in learning more? Here’s an overview of how you can keep up with news and events related to Gutenberg and 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. Editor.

Gutenberg 20.0 is out of the oven and ready to download.

The last first of 2025 introduces improvements to the Style Book, a new starter pattern ui, a swathe of component library enhancements, and code quality improvements.

Table of contents

  1. Enhancements for the Style Book
  2. Starter Patterns get a new UI
  3. Easily set a Page to become the Posts Page
  4. Display Block Type Badge for renamed blocks
  5. More Highlights
  6. Changelog
  7. Contributors

Enhancements for the Style Book

The Style Book got a few improvements in this release. It now features different sections for typography, colors, and individual blocks that all activate when the user navigates to those menu items. Additionally, the Style Book now its own URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org (#67811), so you can access it directly.

Starter Patterns get a new UIUI User interface

We’ve received a lot of feedback that the old Modal based approach for starter patterns caused more annoyance than it helped. So, in an effort to improve the experience, the modal has been removed, and instead, if starter patterns exist, the page will load in the zoomed-out mode with the pattern inserter already opened.

Easily set a Page to become the Posts Page

Similar to the “Set Homepage” action that was added in a recent release, it is now possible to easily set a page to become the posts page using a post action in the dataviews for pages.

Display Block Type Badge for renamed blocks

To clarify what block you are currently editing, the block type is displayed as a badge next to the custom name when a block is renamed.

More Highlights

wp-env now supports multisitemultisite Used to describe a WordPress installation with a network of multiple blogs, grouped by sites. This installation type has shared users tables, and creates separate database tables for each blog (wp_posts becomes wp_0_posts). See also network, blog, site installations allowing developers to easily bootstrap multisite environments, especially for ease of feature testing and quality control. (67845)

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. get a major boost by now allowing developers to apply hooks to post content and synced patterns. This has been a highly requested feature of block hooks since day one. (67272 & 68058)

Changelog

Enhancements

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.

  • iAPI Router: Handle styles assets on region-based navigation. (67826)
  • Prevent each directive errors and allow any iterable. (67798)

Block Library

  • Button: Update Settings text labels. (68265)
  • Introduce new 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. “render_block_core_navigation_link_allowed_post_status”. (63181)
  • Latest Posts add Border Block Support. (66353)
  • Add block example attribute for Comments Form block. (68267)
  • Add block example attribute for Comments block. (68266)
  • Read More: Add example preview. (68288)
  • Query Pagination: Update ‘showLabel’ help text. (68105)
  • Query Total block: Reduce concatenation in the output text. (68150)
  • Post 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.: Use the ‘ResolutionTool’ component. (68294)
  • Add Tools Panel dropdown menu props to More block. (68039)
  • Archive: Add dropdown menu props to ToolsPanel component. (68010)
  • Date Block: Add dropdown menu props to ToolsPanel component. (68018)
  • Archives Block: Refactor setting panel. (67841)
  • Button Block: Refactor setting panel. (67887)
  • Date Block: Refactor settings panel to use ToolsPanel. (67906)
  • Details Block: Migrate to Toolspanel. (67966)
  • 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: Refactor settings panel to use ToolsPanel. (67908)
  • Featured Image Block: Refactor setting panel. (67456)
  • Login/Logout: Add dropdown menu props to ToolsPanel component. (68009)
  • Login/Logout: Refactor settings panel to use ToolsPanel. (67909)
  • More Block: Refactor settings panel to use ToolsPanel. (67905)
  • Navigation Submenu Block: Refactor settings panel to use ToolsPanel. (67969)
  • Page List Block: Add dropdown menu props to ToolsPanel component. (68012)
  • Page List Block: Refactor settings panel to use ToolsPanel. (67903)
  • Query Page Numbers Block: Refactor settings panel to use ToolsPanel. (67958)
  • Query Page Numbers: Add dropdown menu props to ToolsPanel component. (68013)
  • Query Pagination: Refactor settings panel to use ToolsPanel. (67914)
  • Refactor “Settings” panel of Navigation Item block to use ToolsPanel instead of PanelBody. (67973)
  • Replace PanelBody with ToolsPanel and ToolsPanelItem in column block. (67913)
  • Replace PanelBody with ToolsPanel and ToolsPanelItem in spacer block. (67981)
  • Replace PanelBody with ToolsPanel in columns block. (67910)
  • Site Title Block: Add dropdown menu props to ToolsPanel component. (68017)
  • Site Title Block: Refactor settings panel to use ToolsPanel. (67898)
  • Social Icon: Migrate to Toolspanel. (67974)
  • Social Icons: Migrate to Toolspanel. (67975)
  • Table Block: Refactor settings panel to use ToolsPanel. (67896)
  • Tag Cloud Block: Refactor settings panel to use ToolsPanel. (67911)
  • Video Block: Refactor setting panel. (67044)
  • Add dropdown menu props to ToolsPanel component. (68019)

Components

  • Add new “Badge” Component. (66555)
  • Badge: Support text truncation. (68107)
  • BoxControl: Add support for presets. (67688)
  • Button: Add hover style to secondary variant. (67325)
  • CreateTemplatePartModalContents: Use native radio inputs. (67702)
  • Menu: More granular sub-components. (67422)
  • RangeControl: Animate thumb and track only when using marks. (67836)
  • Storybook: Add more max-width containers. (68080)
  • Storybook: Upgrade to the latest version (v8.4.7). (67863)
  • Storybook: Upgrade to v8.0.x. (67574)
  • Unite inline Ariakit imports. (67818)

DataViews

  • Proof of concept: Visualize hierarchical data. (66479)
  • Add confirm dialog before Permanently delete. (67824)
  • Use Badge component in dataview grids. (68062)

Style Book

  • Give style book its own route so it can be linked to directly. (67811)
  • Stylebook: Add the Appearance -> Design submenu through admin_menu action. (68174)
  • Try splitting style book into sections. (68071)
  • Try toggle instead of dropdown to show stylebook. (67810)

Design Tools

  • Post Comments Link: Add Border Support. (68450)
  • Post Template: Add Border and Spacing Support. (64425)
  • Query Total: Add Border Support. (68323)

Block Editor

  • Add reset button to ColorGradientSettingsDropdown. (67800)
  • ChildLayoutControl: Use units defined 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.. (67784)
  • KeyboardShortcuts: Update delete shortcut to use shift + Backspace. (68164)
  • Use Badge component in page markers. (68103)
  • Use custom name in block 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. if available (retaining block type information). (65641)

Block hooks

  • Apply to Post Content (on frontend and in editor). (67272)
  • Synced Patterns: Apply Block Hooks. (68058)

Site Editor

  • Pages: Add “Set as posts page” action. (67650)
  • Add command to navigate to site editor. (66722)

Write mode

  • Allow template part editing in write mode. (67372)
  • Remove placeholder of default paragraph when it’s the only block and canvas is zoomed out. (68106)

Patterns

  • Replace Starter Content modal with inserter panel. (66836)

Build Tools

  • Create Block: Allow external templates to customize more fields. (68193)
  • Create Block: Optimize the default template for multiple blocks case. (68175)
  • Scripts: Recommend passing JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. entry points with paths. (68251)
  • Upgrade sass to version 1.54.0. (68380)
  • postcss-plugins-preset: Bump autoprefixer to 10.4.20. (68237)
  • wp-env: Add multisite support. (67845)

Various

  • DOM: Support class wildcard matcher in ‘cleanNodeList’. (67830)
  • Split upload into verbs and nouns. (68227)
  • Add a Playground blueprint json to the /assets/blueprints folder of Plugin Repo. (67742)

Bug Fixes

  • Add duotone and dimensions to the block level for translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization.. (68243)
  • Add text domain option while scaffolding the block in create-block. (57197)
  • Added is-focus-mode class on all viewports. (67377)
  • Editor: Fix initial edits applied again after saving the post. (68273)
  • Fix dataviews commonjs export. (67962)
  • Get active element within the 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. when restoring focus. (68060)
  • Make strings in theme.json translatable. (66675)
  • Scripts: Use fork of rtlcss-webpack-plugin to fix issues with deps. (68201)

Block Library

  • Columns: Add space above notice text. (68259)
  • Enhance: Improve pagination logic in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress./query-pagination-previous block. (68070)
  • Fix author information leakage by author blocks for Custom Post Types without author support & display notice to user. (67136)
  • Media & Text: Correctly reset the ‘useFeaturedImage’ attribute. (68247)
  • Navigation Submenu Block: Add dropdown menu props to ToolsPanel component. (68015)
  • Page List Block: Fix critical error when converting to link. (68076)
  • Page List block: Don’t wrap Edit button with ToolsPanelItem component. (68248)
  • Query Total: Remove nested element. (68304)
  • Table Block: Fix margin/padding to include caption in spacing. (68281)
  • Update SiteTitle block to Fix isLink Toggle Behavior. (68295)
  • 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.: Make example and variations translatable in post-navigation-link. (68375)
  • i18n: Make example translatable in query-no-results. (68376)
  • i18n: Make example translatable in table-of-contents. (68377)
  • Button Block: Set proper typography for inner elements. (68023)

Components

  • Block Editor: Fix the ‘Reset all’ 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. for the ‘ResolutionTool’ component. (68296)
  • BoxControl: Better minimum value support. (67819)
  • BoxControl: Fix aria-valuetext value. (68362)
  • Fix end-to-end storybook. (68307)
  • Fixing Text Contrast for Dark Mode. (68349)
  • FontSizePicker: Add display: Contents rule to custom size select. (68280)
  • Storybook: Fix emotion/is-prop-valid warning. (68202)
  • Storybook: Fix a few editor styles warnings. (68198)
  • Storybook: Fix warnings in Layout document. (67865)
  • Use default value in useMediaUploadSettings. (68100)

Block Editor

  • Media Replace Flow: Add custom toggle support and fix button height. (68084)
  • BlockCard: Fix title alignment. (68115)
  • DateFormatPicker: Fix styles & spacing. (68079)
  • Fix Iframe error for links without ‘href’. (68024)
  • Grid Visualizer: Improve observation logic. (68230)
  • List View: Fix appender size. (68221)
  • MediaReplaceFlow: Remove store subscription in favor of modern CSSCSS Cascading Style Sheets.. (68276)
  • Remove patterns from the Quick Inserter to prevent misuse in block-specific contexts. (67738)
  • Revert ‘Warning’ component autofocus. (68133)
  • Image: Avoid link class loss when pasting for raw transformation. (67803)
  • Make Block Bindings work with editor.BlockEdit hook. (67523)

Post Editor

  • DataViews: Fix text in action for setting site home page. (67787)
  • Edit post: Fix 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. box pane’s pointer capture. (68252)
  • Editor: Remove HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. from the post title in the document bar. (68358)
  • Fix: Some 403 errors for editor roles. (68146)
  • Improve logic to show entities saved panel description. (67971)

DataViews

  • Don’t render actions dropdown when all eligible ones are primary. (68168)
  • Handle grid preview size based on container width. (68078)
  • Hide actions related UI in grid when no actions or bulk actions are passed. (68033)
  • Pages: Update layout-specific configuration when the view is updated. (67881)
  • Use action.disabled state to disable actions (primary and secondary). (68275)

Site Editor

  • Add CSS classname to fix the negative margins not appearing in the Navigation Screen. (67825)
  • Fix obsolete getLocationWithParams usage. (68388)
  • Pages: Remove unnecessary padding for items. (67977)
  • Update active menu item appearance. (68147)

Style Book

  • Fix global styles updating in style book. (68111)
  • Fix style book background color. (68088)
  • Fix uploading background images in stylebook view. (68159)
  • Stylebook: Avoid double line in subcategory titles. (67752)

Zoom Out

  • Allow replace operation on empty default block in Zoom Out. (68026)
  • Fix don’t show inserter in Zoom Out dropzone when the text is visible. (68031)
  • Hide separators for currently dragged section in Zoom Out. (67638)
  • Make Write mode and Zoom out block options menus consistent. (67749)

Design Tools

  • Background supports: Add default controls supports. (68085)
  • Block supports: Show selected item in font family select control. (68254)
  • Fix: Ensure consistency in editor tools for navigation buttons and delete options. (67253)

Template Editor

  • Fix: Editing “Page” is broken for low capabilitycapability A capability is permission to perform one or more types of task. Checking if a user has a capability is performed by the current_user_can function. Each user of a WordPress site might have some permissions but not others, depending on their role. For example, users who have the Author role usually have permission to edit their own posts (the “edit_posts” capability), but not permission to edit other users’ posts (the “edit_others_posts” capability). users. (68110)
  • Plugin: Fix eligibility check for post types’ default rendering mode. (67879)

Widgets Editor

  • 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. Widgets: Fix inserter button size and animation. (67880)
  • WidgetWidget A WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. Editor: Fix: Close button is not working. (65443)

Various

  • Show metaboxMetabox A post metabox is a draggable box shown on the post editing screen. Its purpose is to allow the user to select or enter information in addition to the main post content. This information should be related to the post in some way. when pattern is accessed directly. (68255)
  • Query Pagination: Fix ‘undo’ trap. (68022)
  • Add –glob argument to rimraf cli scripts. (67829)

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)

  • Dataviews List layout: Do not use grid role on a ul element. (67849)
  • Fix: Templates and patterns are nesting two elements with the button role. (67801)
  • [Dataviews] Fix: Media item focus style is not visible on Grid. (67789)

Block Editor

  • Fix: Inserter categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. tabs: Avoid unnecessary aria-label. (68160)
  • Improve accessibility of the Warning component in the block editor. (67433)

Global Styles

  • Shadows: Always show reset button if hover is not supported. (68122)
  • Visual Refactor: Add Chevron Icon for Shadows in Global Styles. (67720)

Block Library

  • Button: Replace ButtonGroup usage with ToggleGroupControl. (65346)
  • Fix Choose menu label when a menu has been deleted. (67009)

Site Editor

  • Make sure the sidebar navigation item focus style is fully visible. (67817)

Components

  • CustomSelectControl: Refactor to use Ariakit store state for current value. (67815)

Performance

Block Library

  • Don’t fetch media details if the block doesn’t use a featured image. (68299)
  • Media & Text: Optimize block editor store subscriptions. (68290)

Documentation

  • .wp-env.json schema: Add testsPort field. (68220)
  • Add README for TextAlignmentControl component. (68126)
  • Add layout related updates to the DataForm README. (68050)
  • Added Global Documentation in load.php. (68325)
  • Badge component: Fix Storybook URL link. (68077)
  • Badge: Fix up extra newline in readme. (68359)
  • Block Editor Storybook: Restructure the directory and add badges to private components. (68352)
  • Clarify template property behavior in InnerBlocks documentation to specify prefill when empty. (66911)
  • Components: Normalize newlines in auto-generated READMEs. (68208)
  • Components: Prevent broken lists in auto-generated readmes. (68301)
  • Components: Warn private API in auto-generated readmes. (68317)
  • Create a catalog list of private APIs. (66558)
  • DateFormatPicker: Improve line breaks in JSDoc and README. (68006)
  • Doc: Add JSDoc and update README for BlockCard component. (68114)
  • Docs: Fix some typos on reference-guide data-core-block-editor.md. (68066)
  • Documenting innerBlocks in save function. (66689)
  • Fix reference to wp-env start in documentation. (68034)
  • Fix wrong npm start command. (65221)
  • Fix: Fix link to minimal-block example plugin code. (67888)
  • Fixed typo in README of TextTransformControl. (68443)
  • Section Styles: Update block style variation documentation. (68169)
  • Storybook : Add TextTransformControl stories. (67365)
  • Storybook: Add BorderRadiusControl story. (67383)
  • Storybook: Add PlainText Storybook stories. (67341)
  • Storybook: Add stories for BlockCard component. (67191)
  • Storybook: Add stories for BlockTitle Component. (67234)
  • Storybook: Add stories for DateFormatPicker Component. (67290)
  • Storybook: Add stories for the ContrastChecker component. (68120)
  • Storybook: Add stories for the TextAlignmentControl component. (67371)
  • Storybook: Add stories for the TextDecorationControl component. (67337)
  • Storybook: Add story for the Warning component. (68124)
  • Storybook: Make prop sort order consistent. (68152)
  • Tabs: Auto-generate README. (68209)
  • Update platform documentation intro. (61341)
  • Update the copyright licensecopyright license Copyright holders may grant a license with various allowances including the ability to modify or distribute the copyrighted material. Also see GPL. to 2025. (68440)
  • Updated since Doc Order in Inline documentation. (68003)
  • Updated Document URL in Documentation. (67990)
  • Updated Small Typo in documentation in docs/getting-started/faq.md file. (68357)
  • [Docs] Fix: Two broken links to the packages reference API and to blocks documentation. (67889)
  • env: Fix changelog entry. (68219)
  • theme.json schema: Fix block list. (68343)

Code Quality

  • Create Block: Migrate Inquirer.js dependency to the new API. (67877)
  • Fix indentation in the upload-media tsconfig. (68083)
  • Fix indentation in upload-media package.json. (68037)
  • 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. JSDoc syntax for optional object. (68061)
  • Remove some obsolete stylelint at-rule-no-unknown disable rules. (68087)

Components

  • DatePicker: Prepare day buttons for 40px default size. (68156)
  • DropZone: Make the drop zone in Storybook the same size as the item. (68231)
  • Fix Button size violations in misc. unit tests. (68154)
  • Fix: Add soft deperecation notice for the ButtonGroup component. (65429)
  • InputControl : Deprecate 36px default size. (66897)
  • Menu: Migrate Storybook examples to CSF3. (68204)
  • Menu: Use ariakit types. (68206)
  • Navigation: Prepare for hard deprecation. (68158)
  • Navigation: Upsize back buttons. (68157)
  • RadioGroup: Log deprecation warning. (68067)
  • SelectControl : Deprecate 36px default size. (66898)
  • Slot: Use layout effect and update Cover block unit tests. (68176)
  • SlotFill: Use observableMap everywhere, remove manual rerendering. (67400)
  • Tabs: Use correct ariakit type for root component. (68207)
  • TreeSelect: Deprecate 36px default size. (67855)

Plugin

  • fix: return type for WP_Duotone_Gutenberg::Get_selector(). (66695)
  • fix: Deprecated WP_Webfonts() constructor takes no arguments. (66700)
  • fix: Remove extraneous arg from gutenberg_url() call in gutenberg_posts_dashboard(). (66699)
  • fix: Remove extraneous param from remove_filter() calls. (66697)
  • fix: Wrong number of $accepted_args on add_filter() calls. (66694)
  • fix: explicitly return false in WP_Theme_JSON_Gutenberg::Should_override_preset(). (66696)

Block Editor

  • Fix ESLint warnings for the ‘useInnerBlockTemplateSync’ hook. (68355)
  • FontAppearanceControl: Deprecate 36px default size. (67854)
  • FontFamilyControl: Deprecate 36px default size. (67853)
  • Inserter: Use 40px default size for toggle button. (68155)
  • LineHeightControl: Deprecate 36px default size. (67850)

Post Editor

  • DocumentTools: Use standard ToolbarButton for inserter. (68332)
  • Editor: Remove constants for notices. (68361)
  • Editor: Remove the ‘content-only’ check from ‘TemplatePartConverterMenuItem’. (67961)

DataViews

  • DataForm: Add unit tests. (68054)
  • DataForm: Remove FormFieldVisibility. (68203)
  • [DataView] Initial list of unit tests for the DataView component. (68205)

Block Library

  • Columns: Replace some store selectors with ‘getBlockOrder’. (67991)
  • Fix trailing spaces in navigation block classnames. (68161)

Site Editor

  • Edit Site: Standardize reduced motion handling using media queries. (68419)

Design Tools

  • Block Supports: Revert stabilization of typography, border, skip serialization and default controls supports. (68163)

Zoom Out

  • Correct spelling in Zoom Out Inserters comment. (68051)

Block API

  • Fail gracefully when block in createBlock function is not registered. (68043)

Icons

  • Deprecate warning and rename to cautionFilled. (67895)

Tools

Build Tooling

  • Add new private upload-media package. (66290)
  • Build: Simplify tsconfig.json files. (68326)
  • Clean script: Use braces instead of @-pattern for glob. (67833)
  • Fix VS Code performance. (68347)
  • Fix tsconfig for test/ directory. (68346)
  • Fix: Script with glob option doesn’t work on Windows. (67862)

Testing

  • Page – Quick Edit: Add end-to-end tests. (68151)
  • Add ESLint rule to prevent usage of the verb ‘toggle’ in translatable strings. (67741)
  • Enhance template registration end-to-end tests to handle welcome dialog visibility. (68059)

Various

  • ActionItem.Slot: Render as MenuGroup by default. (67985)
  • Storybook: Add BlockAlignmentMatrixControl Stories and update README. (68007)
  • Update “Call to Action” to “Call to action”. (67876)

Plugin

  • Assets: Add README.md about syncing. (68128)
  • Workflows: Sync assets to plugin repo upon change in 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.. (68052)

First-time contributors

The following PRs were merged by first-time contributors:

  • @benazeer-ben: Add command to navigate to site editor. (66722)
  • @dhruvikpatel18: Fixed typo in README of TextTransformControl. (68443)
  • @fushar: Stylebook: Add the Appearance -> Design submenu through admin_menu action. (68174)
  • @im3dabasia: Storybook : Add TextTransformControl stories. (67365)
  • @justlevine: fix: Deprecated WP_Webfonts() constructor takes no arguments. (66700)
  • @karthick-murugan: Latest Posts Border Block Support. (66353)
  • @mayurprajapatii: Updated Document URL in Documentation. (67990)
  • @PARTHVATALIYA: Widget Editor: Fix: Close button is not working. (65443)
  • @prasadkarmalkar: Replace PanelBody with ToolsPanel and ToolsPanelItem in column block. (67913)
  • @rilwis: Fix wrong npm start command. (65221)
  • @sarthaknagoshe2002: Clarify template property behavior in InnerBlocks documentation to specify prefill when empty. (66911)
  • @timse201: Split upload into verbs and nouns. (68227)
  • @vampdroid: Add text domain option while scaffolding the block in create-block. (57197)

Contributors

The following contributors merged PRs in this release:

@aaronrobertshaw @afercia @akasunil @benazeer-ben @bph @Chrico @ciampo @d-alleyne @DAreRodz @dhruvikpatel18 @draganescu @ellatrix @fabiankaegy @fushar @getdave @gigitux @gziolo @hbhalodia @himanshupathak95 @im3dabasia @Infinite-Null @jameskoster @jasmussen @jeryj @jorgefilipecosta @jsnajdr @juanfra @justlevine @karthick-murugan @kmanijak @louwie17 @Lovor01 @Mamaduka @manzoorwanijk @matiasbenedetto @Mayank-Tripathi32 @mayurprajapatii @mcsf @michalczaplinski @mikachan @mirka @ntsekouras @oandregal @ockham @PARTHVATALIYA @prasadkarmalkar @ramonjd @rilwis @rinkalpagdar @Rishit30G @rohitmathur-7 @SainathPoojary @sarthaknagoshe2002 @SH4LIN @shail-mehta @shimotmk @sirreal @stokesman @Sukhendu2002 @swissspidy @t-hamano @talldan @tellthemachines @timse201 @tyxla @up1512001 @vampdroid @Vrishabhsk @yogeshbhutkar @youknowriad

Thanks to @priethor, @gziolo, @jonsurrell, @jorbin who helped with this release and to @joemcgill and @sergeybiryukov for helping review this post.

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