The WordPress coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. development team builds WordPress! Follow this site for general updates, status reports, and the occasional code debate. There’s lots of ways to contribute:
Found a bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority.?Create a ticket in the bug tracker.
“What’s new in GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/…” posts (labeled with the #gutenberg-new tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg.
As with Gutenberg 17.8, many contributors are still focused on polishing for the upcoming WordPress 6.5 release, so this Gutenberg release continues to prioritize stability and bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. fixes. Enhancements and new features are highlighted below.
As a reminder, with WordPress 6.5 now in the RCrelease candidateOne of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). phase, bug fixes from the Gutenberg pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party are backported for inclusion in 6.5 as needed. However, new features in Gutenberg 17.9 will not be included in WordPress 6.5.
Color and typography presets that are defined in theme variations are now exposed within the color and typography sections of Global Styles. This new feature allows users to mix and match color presets or typography from different variations, offering greater flexibility for designs from a given theme. (56622)
Indenting List blockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. items via the tab key
The List block now supports indenting and outdenting when the selection is at the beginning of the List item. This improves the usability of the List block by allowing indenting via the keyboard, while still preserving existing tabbing behavior in the editor canvas when the selection is elsewhere within the block. (59199)
Shuffle option when choosing patterns
When a pattern is inserted and has categories defined, and where the pattern contains a single top-level block such as a Group block, a shuffle button is exposed in the block toolbar that allows a user to cycle through random patterns. This makes it easier to quickly browse through a variety of available patterns in specific scenarios. (59251)
Swap Template Parts in the Inspector
When selecting a Template Part in the site editor, the replace flow is now more discoverable with previews of alternate Template Parts available to select from the block inspector controls. This allows for a more at-a-glance approach to browsing different options for swapping out headers and footers. (55128)
Other Notable Highlights
Background images can now be set in the root of theme.json to provide site-wide background images (59354). There is currently no UIUIUser interface for it in Global Styles, and this will be explored in future releases.
For container blocks that use allowedBlocks, insert before and after actions are now supported on child blocks (59162).
Use drag handles to set row and column span and see a dotted outline of block placement when the new “Grid interactivity” experiment is enabled (59052).
Changelog
Full changelog available
Enhancements
Data Views
Apply hover styles to filterFilterFilters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. chip while being configured. (59236)
Display all checkboxes when a single item is selected. (59233)
Pages data view: Make ‘View’ button open a new tab. (59554)
Update sidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. titles for Template and Page management data views. (59011)
Global Styles
Add background image to top-level theme.jsonJSONJSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. styles. (59354)
Add color and typography presets to Global Styles. (56622)
Create a shared component for typography previews. (59503)
Enqueue block custom CSSCSSCascading Style Sheets. only when block renders on the page. (58991)
Style Book: Should persist when browsing global styles panels. (59261)
Block Library
Introduce the ‘useUploadMediaFromBlobURL’ utility hook. (59350)
Remove redundant copy from PanelBody titles. (59278)
Template Parts: Add a replace flow to the inspector controls. (55128)
Site Editor
Block Theme Previews: Remove “Looking for Template Parts?” hint. (59092)
Remove the site editor sidebar navigation edit button. (59335)
Scale the zoomed out mode to fit available space. (59342)
View full zoomed out mode canvas while inserting patterns. (59337)
Update the spacing in the font collection panel. (59357)
Post Editor
Editor: Standardize headerHeaderThe header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. button size to 32px. (58532)
Add Shuffle option to sections via pattern categoryCategoryThe 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging.. (59251)
Use block naming for marking blocks as overridable in patterns. (59268)
Components
Storybook: Add mechanism to redirect moved stories. (59181)
Nested / Inner Blocks
InnerBlocks: Support insert before/after block actions when using allowedBlocks. (59162)
Plugin
Update cherry pick script to add Backported to WP Core label for backports. (58970)
Bug Fixes
Block Library
Columns: Correctly recalculate column widths when the column count is increased by more than 2 at once. (59301)
Group: Fix alignment of Group block placeholder text. (59271)
Query LoopLoopThe Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop.: Don’t show publicly non-queryable taxonomies. (59458)
Image: Remove scrolling of empty image blocks. (59305)
Site Logo: Update URLURLA specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org for site icon settings with fallback for WP coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. versions earlier than 6.5. (59485)
Site Logo: Update capitalization of Use as Site Icon toggle. (59383)
Title & Featured ImageFeatured imageA featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts.: Hide non content controls when block editing mode is ‘contentOnly’. (59295)
Font Library
Avoid creating font families without font faces. (59436)
Avoid loading theme fonts twice and assume they were already resolved by the font face resolver. (59421)
Changed installFont to installFonts so that multiple font families can be installed at once. (59451)
Fixed the font family modal to open in state when a font is already selected. (59379)
Font collection pagination: Add min height to avoid infinite number. (59241)
Hide UI elements when user lacks permissions. (59332)
Load/Unload the font face in browser when toggling the variants. (59066)
Use SearchControl component for search input. (59589)
Interactivity APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
Fix navigate() issues related to initial state merges. (57134)
Navigation: Add missing empty space to print out valid HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.. (59255)
Prevent unwanted subscriptions to inherited context props. (59273)
HStack, VStack: Stop passing invalidinvalidA resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid. props. (59416)
Rich text: Fix typing into empty flex element. (59473)
URLPopover: Fix a problem with the layout of link settings. (58906)
Fix issue with appender jumping when creating a new pattern. (59582)
Allow event bubbling even if keydown is passed. (59474)
Custom Fields
Block Bindings: Fix console error when selecting a bound block. (59598)
Change default “Connected to a custom fieldCustom FieldCustom Field, also referred to as post meta, is a feature in WordPress. It allows users to add additional information when writing a post, eg contributors’ names, auth. WordPress stores this information as metadata. Users can display this meta data by using template tags in their WordPress themes.” message in bindings. (59434)
Fix inserting button block when pressing enter in a block with bound text attribute. (59361)
Fix query loop with block bindings not working in the editor as expected. (59283)
Data Views
DataViews: Don’t use combobox when there are few available options. (59341)
DataViews: Set color for primary field/a element when focused. (58814)
Ensure ResizableFrame does not force Cover blocks within the editor to show drag handles. (59262)
IframeiframeiFrame is an acronym for an inline frame. An iFrame is used inside a webpage to load another HTML document and render it. This HTML document may also contain JavaScript and/or CSS which is loaded at the time when iframe tag is parsed by the user’s browser.: Scale html instead of iframe element for zoomed out mode. (59334)
Zoom out mode: Only apply grey background for mode. (59377)
Site Editor: Fix Global Styles outdated output. (59628)
Fix site editor crashing when not fully loaded. (59658)
Global Styles
Dynamically set border panel label based on the controls available. (59358)
Shadow: Fix layout collapse when indicator is selected. (59309)
Theme JSON: Check for null values to cater for blockGap. (59258)
Remove the extra unneeded color variations panel. (59718)
Post Editor
Command Palette: Prevent mode switching if only one editor mode is available. (59299)
Editor: Fix post type check in isEditingTemplate selector. (59105)
Top Toolbar: Fix ‘collapsed’ state synchronization. (59267)
Block hooksHooksIn WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same.
Display toggle for hooked blocks added via filter. (59396)
Navigation Block: Fix erroneous escaping of ampersands. (59561)
Patterns
Disable image caption if part of synced pattern. (58916)
Disable selection checkbox if no bulk actions are eligible. (58950)
AccessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)
Docs: Fix typo in blocks attributes guide. (59571)
Docs: Remove TOC, update formatting, and fix grammar in Interactivity API reference. (59406)
Fix @wordpress/interactivity module ID in documentation. (59419)
Fix: Multi line comment format on footnotes block. (59312)
Format PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher inline comments correctly. (59452)
Interactivity API Docs: Add async actions documentation. (59401)
Interactivity API Docs: Add initial version of getContext and getElement. (59293)
Interactivity API Docs: Add server functions documentation. (59373)
Interactivity API Docs: Add withScope description. (59542)
Interactivity API Docs: Fix code not closing. (59395)
Interactivity API Docs: Update image with WordPress Make Core source. (59281)
Interactivity API Docs: Merge Interactivity documentation to keep consistency with other packages. (59270)
Theme JSON Tests: Refactor base styles to a static variable. (58975)
Update: Simplify code and use capture events instead of pointer-events hack. (59565)
l10nL10nLocalization, or the act of translating code into one's own language. Also see internationalization. Often written with an uppercase L so it is not confused with the capital letter i or the numeral 1. WordPress has a capable and dynamic group of polyglots who take WordPress to more than 70 different locales.: Unify terminology to screen size. (59456)
Block Library
BlockPopover: Remove __unstableCoverTarget and __unstableRefreshSize in favour of BlockPopoverCover. (59228)
SnackbarList, Snackbar: Add unit testunit testCode written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression.. (59157)
Global styles: Rename typography elements file. (59355)
Synced Patterns
Remove unneeded pattern overrides translationtranslationThe process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. strings. (59269)
Navigation Menus
Revert removal of Nav fallback auto embed. (59220)
Tools
Testing
Add a fixture for the wp/block pattern block current version with overrides. (59492)
E2E: Refactor setup method to support class inheritance in RequestUtils. (59362)
Migrate ‘autosave’ end-to-end tests to Playwright. (58171)
Playwright: Pass the payload to createPost in data instead of query params to avoid URI too long errors. (59463)
“What’s new in GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/…” posts (labeled with the #gutenberg-new tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg.
With many contributors focused on the upcoming WordPress 6.5 release, this Gutenberg release prioritizes stability and bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. fixes. Still, there are some new features worth noting below!
As a reminder, with WordPress 6.5 now in the betaBetaA pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. phase, bug fixes from the Gutenberg pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party are backported to be included in 6.5, as needed. But new features in Gutenberg 17.8 will not be included in WordPress 6.5.
Grid is a new layout variation for the Group blockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. that allows you to display the blocks within the group as a grid. There are two options for the grid layout. “Auto” generates the grid rows and columns automatically using a minimum width for each item. “Manual” allows specifying the exact number of columns.
Grid child sizing
Grid children can be resized to a specific number of rows/columns by changing the “Column Span” and “Row Span” settings under Styles > Dimensions in the block inspector.
Bulk export your patterns
Multiple patterns can now be exported at the same time. After selecting the patterns you’d like to export in the Patterns section of the Site Editor, choose “Export as JSONJSONJSON, 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.” from the Bulk Edit menu to download a zip archive containing JSON export files for all of the selected patterns.
Browse and try alternative templates in the sidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme.
Templates and template parts now show similar, related templates in the sidebar. You can switch to an alternative template or template part in a single click!
Other Notable Highlights
AccessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)
Template editor/inspector: show and select related patterns. (55091)
Layout
Add toggle for grid types and stabilise Grid block variation. (59051 and 59116)
Add support for column and row span in grid children. (58539)
Enhancements
Patterns Page: Make categoryCategoryThe 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. action button compact. (59203)
Block Editor: Use hooksHooksIn 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. instead of HoC in ‘SkipToSelectedBlock’. (59202)
Font Library: Adds the ability to use generic() in font family names. (59103 and 59037)
REST APIREST APIThe 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/. Global Styles RevisionsRevisionsThe WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision. Controller: Return single revision only when it matches the parent id. (59049)
CSSCSSCascading Style Sheets. & Styling: Tweak link focus outline styles in HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. anchor and custom CSS. (59048)
Data Views: Make ‘All pages’ view label consistent with template and patterns. (59009)
Script Modules APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.: Script Modules add deregister option. (58830)
Block Hooks: Add help text to Plugins panel. (59371)
Custom Fields
Block Bindings: Lock editing of blocks by default. (58787)
Style engine: Rename at_rule to rules_groups and update test/docs. (58922)
Block Library
Gallery: Set the ‘defaultBlock’ setting for inner blocks. (59168)
Remove the navigation edit button because it leads to a useless screen. (59211)
Set the ‘defaultBlock’ setting for Columns & List blocks. (59196)
Update: Increase footnotes metaMetaMeta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. priority and separate footnotes meta registration. (58882)
Site Editor
Editor: Hide template part and post content blocks in some site editor contexts. (58928)
Ignore the ‘twentytwentyfour’ test theme dir created by wp-env. (59072)
useEntityBlockEditor: Update ‘content’ type check. (59058)
Block Library
Author, Author Bio, Author Name: Add a fallback for Author Archive Template. (55451)
Fix Spacer orientation when inside a block with default flex layout. (58921)
Fix WP 6.4/6.3 compat for navigation link variations. (59126)
Interactivity API: Fix server side rendering for Search block. (59029)
Navigation: Avoid using embedded record from fallback API. (59076)
Pagination Numbers: Add data-wp-key to pagination numbers if enhanced pagination is enabled. (58189)
Revert “Navigation: Refactor mobile overlay breakpoints to JSJSJavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. (#57520)”. (59149)
Spacer block: Fix null label in tooltip when horizontal layout. (58909)
Data Views
DataViews: Add loading/no results message in grid view. (59002)
DataViews: Correctly display featured imageFeatured imageA 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. that don’t have image sizes. (59111)
DataViews: Remove second reset filter button in filterFilterFilters 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. dialog. (58960)
Revert footer in pages list with DataViews. (59151)
Revert “Use all the settings origins for a block that consumes paths with merge #55219” (58951 and 59101)
Shadows: Don’t assume that coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. provides default shadows. (58973)
Font Library
Fixes installed font families not rendering in the editor or frontend. (59019)
Font Library: Add missing translationtranslationThe process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. functions. (58104)
Show error message when no fonts found to install. (58914)
Font Library: Create post types on init hook. (59333)
Synced Patterns
Fix missing source for binding attributes. (59194)
Fix resetting individual blocks to empty optional values for Pattern Overrides. (59170)
Fix upload button on overridden empty image block in patterns. (59169)
Design Tools
Background image support: Fix issue with background position keyboard entry. (59050)
Cover block: Clear the min height field when aspect ratio is set. (59191)
Elements: Fix block instance element styles for links applying to buttons. (59114)
ToolbarButton: Fix text centering for short labels. (59117)
Upgrade Floating UI packages, fix nested iframeiframeiFrame is an acronym for an inline frame. An iFrame is used inside a webpage to load another HTML document and render it. This HTML document may also contain JavaScript and/or CSS which is loaded at the time when iframe tag is parsed by the user’s browser. positioning bug. (58932)
Revert “Rich text: Pad multiple spaces through en/em replacement”. (58792)
Custom Fields
Block Bindings: Add block context needed for bindings in PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher. (58554)
Block Bindings: Fix disable bindings editing when source is undefined. (58961)
Block Bindings > Image Block:Mark connected controls as ‘readonly’. (59059)
Details Block: Try double enter to escape inner blocks. (58903)
Font Library: Replace infinite scroll by pagination. (58794)
Global Styles: Remove menubar role and improve complementary area headerHeaderThe header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. semantics. (58740)
Block Editor
Block Mover: Unify visual separator when show button label is on. (59158)
Make the custom CSS validation error message accessible. (56690)
Restore default border and focus style on image URLURLA specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org input field. (58505)
Editor: Unify the editor commands between post and site editors. (59005)
Relocate ‘ErrorBoundary’ component unit testunit testCode written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression. folders. (59031)
Remove obsolete wp-env configuration from package.json (#58877). (58899)
Design Tools > Elements: Make editor selector match theme.json and frontend. (59167)
Global Styles: Update sprintf calls using _n. (59160)
Block API: Revert “Block Hooks: Set ignoredHookedBlocks metada attr upon insertion”. (58969)
“What’s new in GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/…” posts (labeled with the #gutenberg-new tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg.
This cycle is packed with enhancements and bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. fixes ahead of the next WordPress 6.5 release. Multiple performance improvements, refinement of the Link Control UIUIUser interface, Shadow support for the columns, and image blocks are good examples of what this new Gutenberg release is bringing.
The effects panel is now available for the Columns, Column, and Image blocks, allowing users to add shadow effects to them.
Now, users can effortlessly apply shadow effects to these blocks, building upon the functionality previously exclusive to the Button blockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience.. This opens up new creative possibilities, empowering designers to improve their layouts directly from the Editor. (57982)
Data views enhancements
This release marks the continuation of the Dataviews project, which will become a part of WordPress 6.5 for managing patterns and templates.
Additionally, a new primary filter API has been included, allowing main filters to be visible at all times in the UI. This makes it easy to switch between viewing and managing sync or unsync patterns.
Refined Link Control UI
This release includes a few enhancements to the Link Control UI. A notable addition to the interface allows the user to insert a new block instead of a link from the context of the Navigation block. Combined with the fixes from #55551, the Navigation block now will work to allow the insertion of third-party blocks, opening a new range of possibilities (57756, 57986, 58744)
Making Font Library ready for CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress.
The Font Library had some important changes under the hood to prepare for its journey into WordPress Core, including security improvements and standardizing some of the code structure. Some important (and ongoing) accessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) improvements came to the Font Library Management UI in the Site Editor.
Other Notable Highlights
A proposal has been put forward to include Core blocks in the directory developed within the Gutenberg repository for convenience. Core contributorsCore ContributorsCore contributors are those who have worked on a release of WordPress, by creating the functions or finding and patching bugs. These contributions are done through Trac. https://core.trac.wordpress.org. would maintain the blocks but would be standalone instead of bundled with the block library. Please contribute to the discussion in the open issue.
Drag and Drop has been improved, allowing dragging from the block inserter into template parts (and within) and allowing dragging from the desktop to template parts (58589, 58423)
Implement Tabs in widgetWidgetA WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. editor settings. (57886)
Replace TabPanel with Tabs in the editor Document Overview sidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme.. (57082)
SearchControl: Refactor to use InputControl internally. (56524)
Show borders for disabled secondary buttons. (58606)
Data Views
Add outline to template preview in table layout. (58738)
Add: Selection and bulk actions to grid view. (58144)
DataViews: Add primary filterFilterFilters 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.APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.. (58427)
DataViews: In patterns page, show sync status filter by default. (58367)
Update spacing around title in grid layout. (58739)
Interactivity API
Add block supports for clientNavigation and interactive properties on block.jsonJSONJSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. schema. (58132)
Image block: Refactor and remove data-wp-body. (58835)
Follow up on the Post navigation link taxonomyTaxonomyA taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies. filters. (57949)
Home Link: Render Home text if there is no attribute label present. (58387)
Apply custom scroll style to fixed headerHeaderThe header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. block toolbar. (57444)
Block Bindings: Ensure to pass bound attributes. (58844)
Commands
Try debouncing search for post-type navigation. (58810)
Document Settings
Tweak revisionsRevisionsThe WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision. panel for improved scanning. (58751)
Synced Patterns
Support button’s link settings for Pattern Overrides. (58587)
Block API
Block HooksHooksIn 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.: Set ignoredHookedBlocks metada attr upon insertion. (58553)
List View
Add keyboard clipboard events for cut, copy, paste. (57838)
New APIs
Block API
Blocks: Add handling for block.json viewScriptModule. (58731)
Media Replace Flow: Vertically align the URLURLA specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org. (58621)
Set post editor sidebar tabs to manual activation. (58041)
Tabs: Delay activeId updates until focus can be properly detected. (58625)
Tabs: Fix infinite loopLoopThe 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. in useEffect. (58861)
Tabs: Improve Controlled Mode Focus Handling. (57696)
DataViews: Fix nested buttons and placeholder text in list layout. (58304)
DataViews: Fix some small issues with featured imageFeatured imageA 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.. (58371)
DataViews: Make it possible to toggle Author field in templates and template parts. (58609)
DataViews: Remove test artifact (status filter was set as primary). (58682)
Fix: Dataviews selection on patterns grid view. (58726)
Site Editor
Add context for the All translatable string and enforce l10nL10nLocalization, or the act of translating code into one's own language. Also see internationalization. Often written with an uppercase L so it is not confused with the capital letter i or the numeral 1. WordPress has a capable and dynamic group of polyglots who take WordPress to more than 70 different locales. best practices. (58196)
Hide export button if non-block-based theme. (58346)
Mobile site editor header toolbar button bugfix. (58852)
Post Editor
Editor: Don’t hide authors’ Combobox if the current author is missing. (58719)
Fix permalink input field text overflow ellipsis for Firefox. (57310)
Fix the position and size of the Options menu,. (57515)
Fix: Use old template panel if user doesn’t have access to view templates. (58485)
Template editing: Update fullscreen WP back functionality. (58534)
Interactivity API
Add supports.interactivity to the Query block. (58316)
Fix state intialization for asynchronous private stores. (58754)
Remove non-default suffix data wp context processing. (58664)
Use compat versions of HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. APIs. (58846)
Import Maps: Only emit CDATA wrappers for inline scripts for JavaScriptJavaScriptJavaScript 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/.. (58818)
Extensibility
Fix broken list markup in navigation block when 3rd party blocks are used as decendants of navigation block. (55551)
Navigation block: Check Block Hooks API callback hasn’t already been added. (58772)
Synced Patterns
Disable overriding links of images inside pattern instances. (58660)
Fix nested pattern overrides and disable editing inner pattern. (58541)
Inspector Controls
Add missing PanelBody title for the columns block inspector. (58452)
Add spacing between input controls with custom values. (58410)
Custom Fields
Block Bindings: Update bindings registry with latest changes. (58843)
Editor: Ensure the current author is included in the dropdown. (58716)
Rich Text
Add aria-readonly attribute to Rich Text component. (58687)
Navigation Menus
Navigation: Update the fallback block list to avoid a PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher Warning. (58588)
Patterns
Update the bindings attribs of blocks added during experimental phase. (58483)
Distraction Free
Add default restoration of UI when exiting distraction free mode. (58455)
Block editor: selectors: Avoid has() or double get() on Maps. (58372)
Block preview: Prevent recalculating editor styles if additional styles is empty. (58244)
Image block: Remove a block editor store sub. (57232)
Inner blocks: Don’t re-render list when controlled blocks change. (58575)
InnerBlocks: Fix continuous re-rendering on inner blocks change. (58348)
Navigation: Fix performance regressionregressionA 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.. (58513)
Post template: Don’t fetch taxonomies if not needed. (58245)
Site editor: Add pattern/template load performance test with TT4. (58734)
Site editor: Avoid double post content parse (alternative). (58146)
fix: InnerBlocks schema description in block.json. (58649)
Code Quality
Avoid running pattern overrides migrationMigrationMoving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. in WordPress core. (58487)
Build: Add package build shebang and sync comments. (58264)
Update Font Library REST APIREST APIThe 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/. code to align with Core standards. (58619)
Update Font Library non-REST API code to align with Core standards. (58607)
Use toBeDisabled instead of aria-disabled check. (58694)
e2e: Add a test to confirm that the focus moves from the post title to the paragraph using the enter key. (58872)
end-to-end Utils: Ensure deleteAllUsers does not delete current user. (58320)
Build Tooling
Add missing Interactivity API label to changelog script. (58879)
Enable dynamic import transform for ReactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. Native tests. (58546)
Fix: Remove mention of weekly meeting from first time contributor PR label. (58547)
Interactivity API: Move Core implementation to compat 6.5 folder. (58829)
Remove phpunit tests for features backported to Core. (58776)
Update Performance tests base branchbranchA directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch".. (58890)
Workflows: Add ‘Technical Prototype’ to the type-related labels list. (58163)
Always output core block global styles after base global styles. (58761)
BackportbackportA port is when code from one branch (or trunk) is merged into another branch or trunk. Some changes in WordPress point releases are the result of backporting code from trunk to the release branch. theme.json tests from Core. (58476)
Block Library
Reduce label and fix capitalization for image block upload label. (58677)
“What’s new in GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/…” posts (labeled with the #gutenberg-new tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg and the Site Editor project (formerly called Full Site Editing).
This release, which includes 264 pull requests (that’s a lot of work!), can be labeled mainly as a ‘code quality’ one, as it includes two important refactors in both Fonts and Interactivity APIs.
It also includes some improvements in the new “Data Views” experiment, blockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience.hooksHooksIn 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. improvements, and finally, a feature that all developers have been waiting for: the ability to extend allowed blocks within a parent block.
New Block JSONJSONJSON, 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. allowed Blocks
Until now, there has been no way to filterFilterFilters 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. the allowed blocks in an inner block area. This means that developers could not specify which blocks could be inside a parent block without editing the parent block’s edit file. Imagine you’ve just created an amazing icon block to include in the navigation block; now, you can whitelist it using a filter.
Several smaller edit actions are available in the post editor but not the site editor. The misalignment means users sometimes need to hop between editors, which can be frustrating. This Gutenberg version includes all page edit features in both editors.
Also, the Interactivity APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. and the Fonts Library API have received a big refactor. These APIs are getting close to the 6.5 release, so it’s a great time to test them.
Other Notable Highlights
New Interactivity API directives
The Interactivity API now includes several new directives that will be incredibly helpful when creating interactive blocks.
data-wp-on-window and data-wp-on-document to handle global events like scroll, keypress, load, ready, etc.
data-wp-each to render lists.
data-wp-run to execute custom logic while rendering an element with directives.
Footnotes available for custom post types
Footnotes are available for all post types that
Are public and appear in the REST APIREST APIThe 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/..
Supports all of the following: editor, custom fields, and revisionsRevisionsThe WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision..
Changelog
Features
Interactivity API
Add wp-data-on-window and wp-data-on-document directives. (57931)
Keep Link UI open upon initial link creation when used in RichText. (57726)
List View: Displace list view items when dragging (a bit more WYSIWYGWhat You See Is What You GetWhat You See Is What You Get. Most commonly used in relation to editors, where changes made in edit mode reflect exactly as they will translate to the published page.). (56625)
Show initial suggestions in rich text Link UI. (57743)
Disable lock button if user cannot control lock state. (57274)
Use ClipboardJS latest version and clean up focus loss workaround. (57156)
Dimensions: Add Aspect Ratio block support. (56897)
Block Library
Add more taxonomyTaxonomyA taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies. options to the post navigation link. (48912)
Better navigation link variations for post types / taxonomies. (56100)
Remove “blocks” from copy and delete labels. (57769)
Pullquote Block: Add padding and margin support. (45731)
Video Block: Add raw transformation from videohtmlHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.. (47159)
Aspect ratio: Remove support on the Group block for now. (58414)
Image block: Move UI for lightbox from sidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. to the content toolbar alongside link settings. (57608)
Data Views
DataViews: Enable grid layout for templates & parts by default. (58137)
DataViews: Make dataviews powered page patterns stable. (58139)
DataViews: Make the “Manage Pages” stable. (58166)
Use a patchpatchA special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing. format and support linkTarget of core/button for Pattern Overrides. (58165)
Patterns
Add image block support for pattern overrides. (57909)
Outline editable blocks that are within a content-locked container. (57901)
Add description to the save panel headerHeaderThe header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. when nothing is checked. (57716)
Font Library
Update the default collection data URLURLA specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org to the wordpress.orgWordPress.orgThe community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ cdn. (58186)
Font Library: Refactor stylesheet using CSSCSSCascading Style Sheets. variables (58237)
Font Library Modal: Reset the selected font when installing a new font. (57817)
Font Library: Disable font library UI using a PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher filter. (57818)
Font Library: Filter fonts upload directory. (57697)
Font Library: Use data or src file to define font collection data. (57734)
Update Navigation block to render hooked inner blocks. (57754)
Add gettext content when translating ‘Header’. (51066)
Template Editor
Remove template-only mode from editor and edit-post packages. (57700)
New APIs
Block API
Block Bindings API: Add block bindings PHP registration mechanisms and “Post metaMetaMeta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress.” source under the experimental flag. (57249)
Block Bindings API: Refactor logic into Block Bindings class and singleton pattern. (57742)
Bug Fixes
Block Library
AvatarAvatarAn avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name. block: Fix broken aligments in the editor. (58114)
Embed Block: Fix retry processing when embedding with trailing slash fails. (58007)
Lightbox: Fix “Expand on click” control being disabled unintentionally. (56053)
Modified Date Block: Don’t render change date tool. (57914)
Only prioritise Quote transform where relevant. (57749)
Query LoopLoopThe 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.: Fix posts list variation detection. (58194)
#56734 When there is no font, the border should not appear. Display further guidance text. (56825)
Fluid typography: Do not calculate fluid font size when min and max viewport widths are equal. (57866)
Block Editor
Fix regressionregressionA 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.: Content locking does not stops when an outside block is selected. (57737)
LinkControl: Remove unnecessary right padding of input fields. (57784)
Custom Fields
Block Bindings: Fix button popover not showing in patterns. (58219)
Interactivity API: Fix flaky test on-window. (58134)
Fix flaky test on-window, remove duplicate expect on-document. (58181)
Interactivity: Fix broken reactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. usage in published package. (58258)
Fix visual indication of switch to default template in the post editor. (57718)
Site Editor
(editor)(fix) Append the edit-post-header-toolbar class in NavigableToolbar for backward compatibility with pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party GUI injections. (58154)
AccessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)
Site Editor
Fix font variants count color contrast ratio and l10nL10nLocalization, or the act of translating code into one's own language. Also see internationalization. Often written with an uppercase L so it is not confused with the capital letter i or the numeral 1. WordPress has a capable and dynamic group of polyglots who take WordPress to more than 70 different locales.. (58117)
Make the site hub View Site link always visible. (57423)
Block Editor
Fix parent selector button focus style and metrics. (57728)
Restore visual separator between mover buttons when show button label is on. (57640)
Widgets Editor
Fix Widgets page Undo and Redo accessibility and keyboard interaction. (57677)
Block editor: Avoid list re-rendering on select. (57188)
Block editor: Don’t register shortcuts for preview editors. (57984)
Block editor: Fix performance regression after #57950. (57971)
Block editor: Use context for useBlockEditingMode. (57950)
BlockSwitcher: Defer transform calculations until the Dropdown is open. (57892)
Call variation through callback so it’s only loaded when needed – in support of tracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. 59969. (56952)
Footnotes: Combine format store subscription. (58129)
IframeiframeiFrame is an acronym for an inline frame. An iFrame is used inside a webpage to load another HTML document and render it. This HTML document may also contain JavaScript and/or CSS which is loaded at the time when iframe tag is parsed by the user’s browser.: Calc compat styles once per page load. (57798)
Measure typing with the top toolbar enabled. (57709)
Meta boxes: Don’t initialise if there are none. (57182)
Components: Move CHANGELOG entries under the correct release. (57885)
Docs: Fix typo in “The block wrapper” document. (58106)
Docs: Use ‘key’ in ‘editor.BlockEdit’ filter code examples. (58119)
Document files/directories requiring backmerging to WP CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. for major releasemajor releaseA release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope.. (58064)
Fix the iframe markup of the embed video in the Quick Start Guide. (57857)
Remove unused state and rename props to attributes in getElement(). (57974)
HTML API
BackportbackportA port is when code from one branch (or trunk) is merged into another branch or trunk. Some changes in WordPress point releases are the result of backporting code from trunk to the release branch. updates from Core. (57022)
Update the cherry pick script to work with the new version of gh. (57917)
Scripts: Remove unused variable in bin/list-experimental-api-matches.sh. (57771)
(chore) Revert bump to the v17.5.1 (draft) due to bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. in the release found by manual testing. (58027)
“What’s new in GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/…” posts (labeled with the #gutenberg-new tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg and the Site Editor project (formerly called Full Site Editing).
The editor unification project is working to combine the Post Editor and the Site Editor into one unified editor. This release brings that goal closer by combining many of the preferences for these two editors into one shared preferences panel.
Gallery BlockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience.: Random Order Setting
In #57477 we added a new setting to the Gallery block which allows you to give your gallery images a random order. This feature was available in the gallery shortcodeShortcodeA shortcode is a placeholder used within a WordPress post, page, or widget to insert a form or function generated by a plugin in a specific location on your site., but not in the gallery block, until now!
Other Notable Highlights
Post Featured ImageFeatured imageA 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.: Add a useFirstImageFromPost attribute. (56573)
Update @ariakit/reactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. to v0.3.12 and @ariakit/test to v0.3.7. (57547)
Font Library
Font Library: Remove “has_font_mime_type” function. (57364)
Font Library: Update font uninstall modal text. (57368)
Font Library: Add progress-bar while uploading font assets. (57463)
Font Library: Singularize install font families endpoint. (57569)
Add Template Modal: Update scroll related layout. (57617)
Components: Replace TabPanel with Tabs in the Font Library Modal. (57181)
Interactivity APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
Navigation Block: Use dom.focus for focus control. (57362)
Site Editor
Site editor: Add padding to entity save panel headerHeaderThe header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes.. (57471)
Site editor: Add margin to entity save panel header via a classname. (57473)
Block Library
Post Featured Image: Add a useFirstImageFromPost attribute. (56573)
Avoid using a memoized selector without dependencies. (57257)
CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. Data: Pass the ‘options’ argument to data action shortcuts. (57383)
Preferences: Update accessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) scope to “core”. (57563)
Block Editor
Fix Link UIUIUser interface displaying out of sync results. (57522)
Give iframeiframeiFrame is an acronym for an inline frame. An iFrame is used inside a webpage to load another HTML document and render it. This HTML document may also contain JavaScript and/or CSS which is loaded at the time when iframe tag is parsed by the user’s browser. fallback background color. (57330)
Rich text: Add HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. string methods to RichTextData. (57322)
Block Library
Footnotes: Fix wrong link when adding more than 9 footnotes. (57599)
Table: Remove unnecessary margin override in editor styles. (57699)
Template Part block: Fix template part path arg missing from actions. (56790)
Components
DuotonePicker: Fix top margin when no duotone options. (57489)
NavigatorProvider: Exclude size value from contain CSSCSSCascading Style Sheets. rule. (57498)
Edit source pattern in focus mode in post and site editors. (57036)
Site Editor
Make sure comamnd palette toggle does not disappear while being clicked. (57420)
Reinstate iframe CSS for editor canvas container. (57503)
Global Styles
Use is-layout pattern on layout generated classname. (57564)
Global styles revisionsRevisionsThe WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision.: Add individual headings translations, update tests. (57472)
Global style revisions: Move change summary code and tests to block editor package. (57411)
Reduce specificity of block style variation selectors. (57659)
Background image block support: Add tests for size and repeat output. (57474)
Post Editor
Fix Template preview menu item accessibility. (57456)
Fullscreen mode description: Use full text instead of abbreviation. (57518)
NumberControl: Make increment and decrement buttons keyboard accessible. (57402)
Block Tools
Update the position of the patterns tab in the inserter menu. (55688)
Use full text instead of abbreviation for min height setting. (57680)
ResizableEditor: Fix tab order for resize handles. (57475)
Keep Lock button it in the toolbar until unmounted. (57229)
Custom fieldCustom FieldCustom Field, also referred to as post meta, is a feature in WordPress. It allows users to add additional information when writing a post, eg contributors’ names, auth. WordPress stores this information as metadata. Users can display this meta data by using template tags in their WordPress themes. connections: Better description on Experiments page. (57501)
Performance
Block Library
File: Remove ‘block-editor’ store subscription. (57511)
Remove store subscriptions from Audio and Video blocks. (57449)
Site Logo: Remove unnecessary ‘block-editor’ store subscription. (57513)
Send numerical post id when uploading image. (57388)
PostFeaturedImage: Remove unnecessary ‘block-editor’ store subscription. (57554)
Experiments
Data Views
DataViews: Use DropdownMenuRadioItem component when possible. (57505)
Align icon size + placement in Patterns data view. (57548)
DataViews: Add duplicate pattern action in patterns page. (57592)
DataViews: Add footer to Pages sidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme.. (57690)
DataViews: Add sync filterFilterFilters 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. in patterns page. (57532)
Add links to additional local dev tools in Block Developement Environment readme. (57682)
Add new section to the Quick Start Guide about wp-env. (57559)
Block JSONJSONJSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. schema: Add renaming key to supports definition. (57373)
Break out the Curating the Editor Experience doc into its own How-to Guides section. (57289)
Change the slug for the theme.json doc to avoid conflicts. (57410)
Docs/tutorial: Fix opposite condition for content generation in render.php. (57445)
Docs: Fundamentals of Block Development – Static or Dynamic rendering of a block. (57250)
Docs: Update sample code to fix React warning error on Tutorial page. (57412)
Fix formatting issue due to incorrect link parsing in the Quick Start Guide. (57693)
Fix incorrect heading level in Editor curation documentation. (57409)
Navigation: Refactor mobile overlay breakpoints to JSJSJavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.. (57520)
Editor: Use hooksHooksIn 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. instead of HoCs in ‘PostVisibilityCheck’. (57705)
Quality: Avoid React warning when changing rendering mode. (57413)
Dependency Extraction Webpack PluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party: Use import for module externals. (57577)
DependencyExtractionWebpackPlugin: Add true shorthand for requestToExternalModule. (57593)
DependencyExtractionWebpackPlugin: Use module for wordpress/interactivity. (57602)
Fix webpack not setting environment.module true. (57714)
Modules: Load the import map polyfill when needed. (57256)
Blocks: Add handling for block.json viewModule. (57437)
Testing
Allowed Patterns end-to-end test – move tests that run with a subset of allowed blocks into a group. (57496)
Migrate ‘allowed patterns’ end-to-end tests to Playwright. (57399)
Migrate ‘block editor keyboard shortcuts’ end-to-end tests to Playwright. (57422)
Migrate ‘core settings’ end-to-end tests to Playwright. (57581)
Migrate ‘datepicker’ end-to-end tests to Playwright. (57545)
Migrate ‘dropdown menu’ end-to-end tests to Playwright. (57663)
Migrate ‘editor modes’ end-to-end tests to Playwright. (57574)
Migrate ‘invalidinvalidA resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid. blocks’ end-to-end tests to Playwright. (57508)
Migrate ‘nux’ end-to-end tests to Playwright. (57542)
Migrate ‘preferences’ end-to-end tests to Playwright. (57446)
Migrate ‘publishing’ end-to-end tests to Playwright. (57521)
Migrate ‘scheduling’ end-to-end tests to Playwright. (57539)
Migrate ‘sidebar’ end-to-end tests to Playwright. (57448)
Migrate ‘taxonomies’ end-to-end tests to Playwright. (57662)
Migrate remaining ‘publish panel’ end-to-end tests to Playwright. (57432)
Update ‘missing block’ end-to-end tests to use the ‘setContent’ helper. (57509)
Build Tooling
Group GitHubGitHubGitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ Action Dependabot updates. (57591)
“What’s new in GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/…” posts (labeled with the #gutenberg-new tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg and the Site Editor project (formerly called Full Site Editing).
For this release, contributors reached a milestone for data views, increased feature parity between site and post editors, improved performance across a few areas and added functionality to current features, including List view and Style RevisionsRevisionsThe WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision..
With this new version, users can expect more flexibility with background images for the Group blockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. and fixes to improve support for design tools for classic themes.
The Data Views work reaches a new milestone: stabilizing this new experience for the template screen, making it available outside the experiments flag and without the additional “Views” options. Please consider using this new experience and provide feedback! (57109)
Style revisions: Stylebook integration and pagination
Work continued evolving the usefulness of Style Revisions, with added pagination for better navigation and the integration with the Stylebook. When reviewing revisions with the Style Book, you can better understand the impact of the changes for both within the template you’re looking at and across individual blocks. (56799) (56800)
Background Images: size and repeat controls.
This release also adds controls to the background image to adjust size and toggle repetition for the Group Block. This allows you to set the background image to “Cover” (default), or to “Contain”, keeping the aspect ratio intact, and when set to repeat it only repeats in one dimension. With the “Fixed” option, you can set a custom display width, and by selecting the repeat feature, the image repeats over the canvas size of the block. (#57005)
List View: Right click access to Block Setting
A right click on List View opens up that block’s settings menu and gives fast access and streamlines editing. 50273
Other Notable Highlights
The site editor received an additional sidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. panel already available to post editor screens. Unification of the interface and access to the same controls for page page attributes, post taxonomies, Discussion panel, and feature image panel, gives users more confidence in learning how to use it and allows as well to streamline development in the future. (57151, 57049, 57153, 57150, 57053, 57010)
The support for `appearanceTools` for classic themes has been expanded and improved for default color palette handling and duotone settings. (56131)
Changelog
Full changelog available
Enhancements
Components
Refactor experimental dropdown menu usages to the latest version. (55625)
Replace TabPanel with Tabs in the Block Inspector. (56995)
Replace TabPanel with Tabs in the editor Global Styles color palette. (57126)
ToggleGroupControl: Update large button size to 32px. (57338)
Add the featured imageFeatured imageA featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts. panel. (57053)
Editor: Unify revision panel between post and site editors. (57010)
Social Link block: Obfuscate email address. (57384)
Design Tools
Background image: Add backgroundSize and repeat features. (57005)
Make sure theme color palette presets are output when appearance tools are enabled. (57190)
Move the tools panel to the left of the inspector. (55785)
Tabs: Make sure individual Tabs are linked to the correct TabPanels. (57033)
Text selection: Show CSSCSSCascading Style Sheets. hack to Safari only. (57300)
Truncate: Improve handling of non-string children. (57261)
FormTokenField: Handle disabled prop on internal Button. (57187)
tab panel: Don’t render hidden content by default. (57046)
Block Editor
Exclude disabled buttons when setting initialIndex of NavigableToolbar. (57280)
Fix BlockSwitcher checks for showing a Dropdown menu or not. (57047)
Fix block lock toolbar item stealing focus when mounted with StrictMode. (57185)
Fix content lock UIUIUser interfaceregressionregressionA 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.. (56974)
Fix vertical overflow when inserter is open in post and site editor. (57127)
Hide drop indicator where block isn’t allowed to drop. (56843)
InserterListItem: Use item.isDisabled to detect disabled item. (57161)
More settings tip: Add explicit font size. (55835)
Writing flow: Absorb partial multi selection dispatching. (47525)
Audio: Hide some controls when multi-editing blocks. (57376)
Disable resizing when the viewport is small and wide-aligned. (57041)
Gallery: Hide some controls when multi-editing blocks. (57378)
Image Block: Get lightbox trigger button ref via data-wp-init. (57089)
Image: Hide caption control when multi-editing images. (57357)
Video: Hide some controls when multi-editing blocks. (57375)
Image Block: Fix deprecation when width/height attribute is a number. (57063)
Patterns
Fix: Viewport width not accounted for in the Site Editor > Patterns view. (55803)
Override all the labels of the pattern categories taxonomyTaxonomyA taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies.. (57094)
Pattern CategoryCategoryThe 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging.: Change show_tagcloud to false. (57212)
Patterns (unsynced): Prevent infinite loops due to recursive patterns. (56511)
Site Editor
Fix image upload bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority.. (57040)
Reduce clearance around the Frame in the site editor. (57023)
Swap Template: Show the right templates for the right post type. (57149)
Save Button: Fix the translationtranslationThe process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. of the Activate button. (57147)
Editor: Use visibility selector for PostTemplatePanel. (57224)
Fix: Code editor title width in classic theme. (56922)
Design Tools
Allow default duotone styles in classic themes. (57191)
StylesPreview: Fix endless loopLoopThe 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. of ratio calculations when on the threshold of a scrollbar. (57090)
Interactivity APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
Fix namespaces in nested interactive regions. (57029)
Fix Interactivity, not working on Classic Themes. (57396)
Collaborative Editing
Collab editing: Ensure block attributes are serializable. (57025)
AccessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)
Font size picker: Fix Reset button focus loss. (57196)
a11yAccessibilityAccessibility (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): Apply focus style to revision items. (57039)
[a11y] Fix: Use spans instead of headings on data views table view page title. (56956)
Prevent layout re-rendering when changing selected block. (57136)
Prevent re-rendering the editor headerHeaderThe header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. when the selected block changes. (57140)
Rewrite moving animation for better load performance. (57133)
Rich text: Avoid block editor subscription if not selected. (57226)
Try removing extra memoization for individual style panels. (57160)
hooksHooksIn 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.: Manage save props in one place. (57043)
DataViews: Align filterFilterFilters 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. implementations. (57059)
DataViews: Centralize control of filter visibility in the Filters component. (57056)
DataViews: Close actions menu upon switching layouts. (57015)
DataViews: Display column header when the field is only filterable. (57051)
DataViews: Fix bug on operators count for table layout. (57048)
DataViews: Improve naming for easy identification in ReactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. devtools. (57385)
Components: Update TypeScript-related tips in Contributing Guide. (57267)
Doc: Block Wrapper – enclose HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.tagtagA 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.), use correct keyword supports not support. (56906)
Remove links to excalidraw diagrams from images. (56980)
Remove the “How to use JavaScriptJavaScriptJavaScript 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” documentation. (57166)
Remove unnecessary TOCs from documentation. (57087)
Restore descriptions for deprecated button props. (37690)
Snackbar: Remove __unstableHTML prop from TS. (57218)
Update block toolbar and settings sidebar image. (57203)
fix: Updated the link for “Building a custom block editor”. (57319)
Code Quality
Add missing block/theme jsonJSONJSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. $schema property. (57201)
Editor: Move the ExcerptExcerptAn excerpt is the description of the blog post or page that will by default show on the blog archive page, in search results (SERPs), and on social media. With an SEO plugin, the excerpt may also be in that plugin’s metabox. panel to the editor package. (57096)
Refactor useCanContextualToolbarShow for simplicity and clarity. (56914)
Remove unnecessary isDisabled option on useShortcut for BlockToolbarPopover. (56907)
Replace block variation buttons with ToggleGroupControl. (45654)
Move kebabCase() function from block-editor package and mark it as a private API. (56758)
Block Library
Gallery Block: Remove unused attributes property in ShortcodeShortcodeA shortcode is a placeholder used within a WordPress post, page, or widget to insert a form or function generated by a plugin in a specific location on your site. transformation. (57356)
Remove cruft in Button block editor styles. (30950)
Tag Cloud: Replace ‘withSelect’ HoC with ‘useSelect’. (57194)
Global Styles
Global styles revisions: Refactor sticky pagination footer to use CSS. (57294)
Relocate revisions from fill to sidebar component. (57034)
Simplify the conditions in GlobalStylesEditorCanvasContainerLink. (57144)
List View
Editor: Move and unify the inserter and list view states. (57158)
Editor: Unify the list view shortcut registration and definition. (57200)
ListView: Replace prop drilldown by a stable ref in store. (57198)
Typography
Font Library: Consolidate existing API rest endpoints. (57282)
Quality: Replace wpKebabCase function with kebabCase function from components package. (57038)
Site Editor
Editor: Move the panel visibility state from the edit-post to the editor package. (57012)
Remove isResizing variable from layout component as it is always false. (57119)
Add basic test coverage for Navigation MenuNavigation MenuA theme feature introduced with Version 3.0. WordPress includes an easy to use mechanism for giving various control options to get users to click from one place to another on a site. editing mode. (56871)
PluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party
Implement proposal to remove the WordPress-Docs ruleset. (56982)
i18ni18nInternationalization, 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 menu and title labels in Gutenberg plugin translatable. (43500)
Modules API
Refactor, tests, and final dependencies array structure. (57231)
Tools
Dependency Extraction Webpack Plugin: Fix test issues. (57332)
Testing
Add an end-to-end test to check image upload working in site editor. (57086)
Components: Add unit testunit testCode written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression. __experimentalExpandOnFocus unit tests for FormTokenField. (57122)
Global styles revisions e2e: Tidy up selectors to open revisions panel. (57146)
Migrate ‘Comments Form’ end-to-end tests to Playwright. (57337)
Migrate Site Editor ‘settings sidebar’ end-to-end tests to Playwright. (57392)
Migrate remaining ‘block switcher’ end-to-end tests to Playwright. (57381)
“What’s new in GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/…” posts (labeled with the #gutenberg-new tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg and the Site Editor project (formerly called Full Site Editing).
This update incorporates numerous enhancements, bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. fixes, improvements in performance and accessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility), and ongoing development of Phase 3 features.
Summary of changes in global styles revision history
Updated preferences panel
Integration of GravatarGravatarIs an acronym for Globally Recognized Avatar. It is the avatar system managed by WordPress.com, and used within the WordPress software. https://gravatar.com/. Service for Social Icons
Other Notable Highlights
Introduces the ability to adjust the dimensions (margin and padding) of individual list-item blocks. #55874
Unified post editor with template and post-only editing modes. (#56671)
Start using modules in the interactive create-block template. (56694)
Changelog
Bug Fixes
(edit-site)(use-init-edited-entity-from-url) Safely access toString() on siteData‘s page_on_front. (57035)
Components
Fix form token field suggestion list reopening after blurring the input. (57002)
Contributors
The following contributors merged PRs in this release:
Tweak table block placeholder with __next40pxDefaultSize props. (56935)
Site Editor
Merge the post only mode and the post editor. (56671)
Site Editor SidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme.: Add “Areas” details panel to all templates and update icon. (55677)
Block Editor
Allow dragging between adjacent container blocks based on a threshold. (56466)
Components: Replace TabPanel with Tabs in the editor’s ColorGradientControl. (56351)
Match the front end layout classname in the editor. (56774)
Global Styles
Global style revisionsRevisionsThe WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision.: Show change summary on selected item. (56577)
Create-block-interactive-template: Add all files to the generated pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party zip. (56943)
Create-block-interactive-template: Prevent crash when Gutenberg plugin is not installed. (56941)
Fix end-to-end test: Update how we find the template title to match markup changes. (56992)
Fix: Fatal php error if a template was created by an author that was deleted. (56990)
Fix: PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher 8.1 deprecated warning strpos(). (56171)
Font Library: Add font family and font face preview keys to schema. (56793)
Remove unnecessary CSSCSSCascading Style Sheets. for shrinking central headerHeaderThe header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. area. (56220)
PaletteEdit: Temporary custom gradient not saving. (56896)
ToggleGroupControl: ReactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. correctly to external controlled updates. (56678)
Block Editor
Apply __next40pxDefaultSize to TextControl and Button component in renaming UIs. (56933)
Show back button when editing navigation and template area in-place with no URLURLA specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org params. (56741)
Typography
Fix order of typography sizes and families. (56659)
Fix top position and height of Pattern Modal Sidebar. (56787)
Interactivity APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
Start using modules in the interactive create-block template. (56694)
Layout
Fix input not showing when switching to “Fixed” width. (56660)
Consolidate and resolve display issues between InserterPreviewPanel and BlockStylesPreviewPanel. (56011)
Inspector Controls
Decode some characters if used in taxonomyTaxonomyA taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies. name so it’s displayed correctly in Query LoopLoopThe 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. filters. (50376)
Accessibility
Data Views
Add scroll padding to dataviews container. (56946)
Fix: Use span instead of heading for the template titles. (56785)
Post Editor
Avoid to show unnecessary Tooltip for the Post Schedule button. (56759)
Block Editor
Increase right padding of URL field to take the Submit button into account. (56685)
Site Editor
Shorter screen reader announcement after changing pages. (56339)
Components
Use tooltip for the Timezone only when necessary. (56214)
Performance
Block editor: Make all BlockEdit hooksHooksIn 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. pure. (56813)
Block editor: Remove 4 useSelect in favour of context. (56915)
Block editor: hooks: Avoid BlockEdit filterFilterFilters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. for content locking UI. (56957)
CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. data revisions: Remove hardcoded supports constant. (56701)
Editor: Cleanup default editor mode handling. (56819)
Editor: Move the BlockCanvas component within the EditorCanvas component. (56850)
Editor: Move the device type state to the editor package. (56866)
Many thanks to @mikachan for helping out to publish the plugin, @jameskoster for providing graphics for this post, @mikachan and @vcanales for reviewing the draft of this post.
“What’s new in GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/…” posts (labeled with the #gutenberg-new tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg and the Site Editor project (formerly called Full Site Editing).
Gutenberg 17.2 has been released and is available for download! This release includes a few improvements for the Site Editing experience — including the ability to drag and drop to the top and bottom of the document and sticky table headers —, improvements to the Interactivity APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. docs, and a lot of Bug fixes and other improvements. Let’s take a closer look!
Allow dragging and dropping onto the beginning and end of a document.
Improves the experience of dragging and dropping Blocks onto the very top and/or bottom of the document by virtually enlarging the area — this doesn’t have a visual impact on the rest of the editing experience or on the front end, and makes it a much less finicky experience! (#56070)
Sticky table headers and pagination.
These provide extra context when scrolling down on large datasets, saving us from scrolling back up every time we inevitably forget what each column is supposed to contain, or which page you’re currently looking at. (#56157)
Toolbar for the Distraction-Free Mode
The BlockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. Toolbar will now slide into view by moving your mouse to the top of the editor when using Distraction-Free mode. (#56295)
Other notable highlights
CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. data revisionsRevisionsThe WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision.: Extend support to other post types. (#56353)
Render htmlHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. in post titles in visual mode and edit HTML in post title in code view. (#54718)
Interactivity API: Use modules instead of scripts in the frontend. (#56143)
Changelog
Features
Modules API
Interactivity API: Use modules instead of scripts in the frontend. (56143)
Enhancements
Add translator comments for strings containing date formats. (56531)
Block Theme Preview: Display the theme name on the activate button. (55752)
Core data revisions: Extend support to other post types. (56353)
Improve tooltip for parent blocks on the block toolbar. (56146)
Try Ariakit Select for new CustomSelectControl component. (55790)
Block Editor
Block Settings: Only display parent block selector on small screens. (56431)
Drag and drop: Allow dragging to the beginning and end of a document. (56070)
List View: Expand state if a block is dragged to within a collapsed block in the editor canvas. (56493)
Data Views
Data list view: Make filterFilterFilters 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. row, table headerHeaderThe header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes., and pagination sticky. (56157)
Add ‘View site’ action to ‘Site updated’ snackbar. (52693)
Add the Post Author component to the Page sidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme.. (56368)
Redirect to main page menu if page record not found. (56177)
Layout
Add layout classes to legacy Group inner container. (56130)
Add setting to disable custom content size controls. (56236)
Update Labels in Block Inserter (block patterns tab). (55986)
Icons
Update trashTrashTrash in WordPress is like the Recycle Bin on your PC or Trash in your Macintosh computer. Users with the proper permission level (administrators and editors) have the ability to delete a post, page, and/or comments. When you delete the item, it is moved to the trash folder where it will remain for 30 days. icon. (56569)
Block Library
Disable block renaming support for Nav Link block. (56425)
Revisions: Add new selectors to fetch entity revisions. (54046)
Interactivity API
MigrationMigrationMoving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. to the new store() API. (55459)
Bug Fixes
Core data: Harmonize getRevision selector and resolver function signatures. (56416)
Editor styles: Scope without adding specificity. (56564)
Post Schedule Panel: Remove text overflow ellipsis. (56319)
Rich text: Pad multiple spaces through en/em replacement. (56341)
Site Editor: Add a fallback template showing the title and content for the post only mode. (56509)
useEntityRecord: Do not trigger REST APIREST APIThe 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/. requests when disabled. (56108)
Block Editor
(RichText)(Workaround)(17.1.x) Fallback to a string arg in collapseWhiteSpace() if value is not a string. (56570)
Cover block: Pass dropZoneElement reference to fix dragging within cover block area. (56312)
PostCSS style transformation: Fail gracefully instead of throwing an error. (56093)
Undeprecate the ‘__experimentalImageSizeControl’ component. (56414)
useMovingAnimation: Clear translate3d rule when animation is finished. (56410)
Block Library
File block: Remove anchor tagtagA 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.) when copy pasting to file name. (56508)
Global styles revisions: Update isResolving flag. (56491)
Spacing: Fix block error if spacing unit array empty in theme.jsonJSONJSON, 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.. (56306)
Post Editor
Editor: Fix issue where createBlock in block template caused list view collapse. (56666)
Save post button: Avoid extra re-renders when enablng/disabling tooltip. (56502)
CSS & Styling
Reduce specificity of default Cover text color styles. (56411)
Restore Post Title visual styles in Code View mode. (56582)
Site Editor
Fix template resolution for templates assigned as home page. (56418)
Site Editor Sidebar: Fix actions vertical alignment. (56218)
Modules API
Modules: Fix import map polyfill not being copied on the generated pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party ZIP. (56655)
Saving
Editor: Reinstate anonymous callback for saved post state. (56529)
Fix issue with template in replace template screen. (56407)
Layout
Fix issue where layout classnames are injected for blocks without layout support. (56187)
Typography
Font Library: Fix fonts not displaying correctly. (55393)
Colors
Duotone: BackportbackportA port is when code from one branch (or trunk) is merged into another branch or trunk. Some changes in WordPress point releases are the result of backporting code from trunk to the release branch. from Core to fix filters in classic themes. (54778)
AccessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)
Data Views
DataViews: Make disabled pagination buttons focusable. (56422)
Block Library
Image Block: Enable image block to be selected correctly when clicked. (56043)
Block Editor
Tooltip: Don’t render buttons tooltip when show button text labels is enabled. (55842)
Components
Improve Button saving state accessibility. (55547)
Patterns
Fix focus loss after converting to a synced pattern. (55473)
Site Editor
Migrating StyleBook to use updated Composite implementation. (55344)
Render html in post titles in visual mode and edit HTML in post title in code view. (54718)
Documentation
Add the attributes definition page to the create block tutorial of the platform documentation. (56429)
Add the transforms page to the create block tutorial of the platform documentation. (56559)
Add thee block supports page to the create block tutorial of the framework docs. (56483)
Added clarifications and examples to “Get started with wp-scripts”. (56298)
Block Editor: Fix typo in URLInput‘s onKeyDown prop documentation. (56322)
Bring back non-JSJSJavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. tabs in block editor handbook. (56561)
Docs: Fix incorrect build script description in script package. (56332)
Docs: Fundamentals of Block Development – File structure of a block. (56551)
Docs: Fundamentals of Block Development – Registration of a block. (56334)
Docs: Fundamentals of Block Development – The block wrapper. (56596)
Docs: Fundamentals of Block Development – Working with JavascriptJavaScriptJavaScript 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. (56553)
Docs: Fundamentals of Block Development – block.json. (56435)
Documentation – Block Editor Handbook – Add end user documentation about Block Editor as a resource on the Landing Page of the Block Editor Handbook. (49854)
Fix overly complex code example in ComboboxControl readme. (56365)
Fix version in useSetting deprecation notice. (56377)
Fundamentals block development – landing and first pages. (56584)
Fundamentals of Block Development – fix save definition. (56605)
Interactivity API: New store() API documentation. (56764)
Interactivity API: Update TS/JSDocs after migrating to the new store() API. (56748)
Link preview image to live example using WordPress Playground. (56292)
NavigableContainers: Fix doc typo in onKeyDown prop. (56352)
Release docs: Add new section about troubleshooting the release. (56436)
Remove all {% codetabs %} instances and any vanilla JS references. (56121)
Simplify code example in ToggleControl component readme. (56389)
Text and Heading: Improve documentation around default values and truncation logic. (56518)
Theme JSON schema: Add heading/button key to color definition. (55674)
Unify the PostSchedule component between site and post editors. (56196)
Update: Refactor useAddedBy to use authorText and originalSource fields. (56568)
Block Library
Add align support to the image block – alternative. (55954)
Backmerge block renaming fixes/refactors from 6.4 branchbranchA directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch". into Gutenberg trunktrunkA 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.. (56386)
Dataviews: Ensure items and fields are using a unique id. (56366)
Design Tools
Fix: Theme.json font settings in unit testunit testCode written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression.. (56309)
Tools
Workflows: Update ‘days-before-stale’ for flaky test report issues. (56585)
Many thanks to @annezazufor the assist when publishing the plugin, @jameskosterfor designing graphics for this post, and @draganescu, @ramonjd, @scruffianand@cbravobernalfor gathering highlights!
“What’s new in GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/…” posts (labeled with the #gutenberg-new tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg and the Site Editor project (formerly called Full Site Editing).
The latest release includes several new enhancements, loads of bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. fixes, and continued work on Phase 3 features.
Improvements to accessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) and writing flow
There are a few improvements that contribute to a better editing experience:
The Image and Media&Text blocks properly show the pressed state for the link button in the blockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. toolbar (56123).
The buttons block now mimicks the list behavior: enter twice on the last button goes to the next line (56134).
New keyboard shortcut in the list view (CMD+A on Mac, CTRL+A on Windows) to select all blocks (54899).
Design tools: block spacing for Quote block
The Quote block has gained support for layout and so it’s now possible to control the spacing of its inner blocks (56064).
Other notable highlights
Escape on Block Toolbar returns focus to Editor Canvas (55712).
Continue polishing the global styles revisionsRevisionsThe WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision.: return the user to the editor and global styles panel after a revision is applied (55881), improve copy text (55868), load unsaved revision in the preview (55880).
Patterns: in the front-end, they show embeds (55979), and the site editor’s pattern page now shows theme patterns specified in theme.json (55877).
Changelog
See full changelog.
Enhancements
Block Library
Navigation block: Fix Inaccurate description of the Show icon button setting. (55429)
Query LoopLoopThe 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.: Add accessibility markup at the end of the loop in all cases. (55890)
Template Part: Add fallback to the current theme when not provided. (55965)
Update components to use __next40pxDefaultSize. (56022)
Tabs: Update subcomponents to accept full HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. element props. (55860)
TextControl: Add opt-in prop for 40px default size. (55471)
ToggleGroupControl: Add opt-in prop for 40px default size. (55789)
Interactivity APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
Server directive processing: Process only root blocks. (55739)
Block settings menu
Remove the extraneous template part title in replace control. (55603)
List View
Add keyboard shortcut to select all blocks. (54899)
Background Image Support: Hide the background image reset button when there’s no image. (55973)
Background image support: Fix focus loss when resetting background image. (55984)
Custom Link: Decode value in URLURLA specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org input field. (55549)
Form block: Use type="submit" for buttons. (55690)
Image block: Add check for lightbox values during image block migrationMigrationMoving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies.. (56057)
Image block: Don’t show pointer cursor on linked image in the editor. (55882)
Lightbox: Fix button misalignment in gallery image. (56060)
Missing block: Use raw source for originalContent. (56014)
Navigation Link block: Register variations on post type / taxonomyTaxonomyA taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies. registration. (54801)
Pattern: Fix regressionregressionA 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. error in post type templates. (55858)
Post feature image block: Wrap images with hrefs in an A tagtagA 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.). (55498)
Quote Block: Fix the Quote block layout supports. (55240)
Read More block: Reduce text decoration specificity. (56038)
Data Views
DataViews: Add missing key to ResetFilters component. (56189)
DataViews: Fix issue with irrelevant statuses. (55967)
DataViews: Fix nested button tags on sidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme.. (56089)
DataViews: Fix pagination on manual input. (55940)
DataViews: Fix spacing issue in top-level bar. (56151)
DataViews: Fix status filterFilterFilters 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. upon switching the default views from the sidebar. (55856)
DataViews: Make items per page an even number. (55906)
DataViews: Reset pagination upon filter change. (55797)
Dataviews: Add a missing icon for the side by side view. (55925)
Components
DropdownMenu: Remove extra vertical space around the toggle button. (56136)
DropdownMenuV2: Prevent default on Escape key presses. (55962)
DropdownMenuV2: Use the Icon component to render radio checks. (55964)
Typography
Fix fatal error in WP_Fonts_Resolver::Get_settings(). (55981)
Font Library: Create fonts dir if a font face needs to use the filesystem. (56120)
Font Library: Fix font installation failure. (55893)
Block Editor
IframeiframeiFrame is an acronym for an inline frame. An iFrame is used inside a webpage to load another HTML document and render it. This HTML document may also contain JavaScript and/or CSS which is loaded at the time when iframe tag is parsed by the user’s browser.: Bubble events from html element instead of body element to fix drag chip positioning. (56099)
Post Featured ImageFeatured imageA 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.: Handling correctly when uploading a file without mime type. (56133)
Move clientId key to BlockContextualToolbar. (56008)
Patterns
Add context for translators to any unclear usage of “synced”. (55935)
Use existing download function for JSONJSONJSON, 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. downloads to fix non-ASCII encoding. (55912)
Inspector Controls
Global Styles: Don’t show “Apply Styles Globally” button in non-block based themes. (56033)
Template Editor
Templates: Update filter to call all of the individual methods. (55980)
Global Styles
Global styles revisions: Load unsaved revision item into the revisions preview. (55880)
Post Editor
Edit Post: Fix pattern modal reopening when making the title empty again. (55873)
Data Layer
CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. data: Fix wrong store results when page receives less items that what is stored. (55832)
Fix mismatching link control action buttons visual order and DOM order. (56042)
Escape on Block Toolbar returns focus to Editor Canvas. (55712)
Site Editor
Prevent sidebar focus in site editor on small screens. (55934)
Block Library
Heading level dropdown: Remove obtrusive tooltips in favor of visible text. (56035)
Performance
Tooling
Add a metric to trace template navigation in the site editor. (55796)
List View
ListViewBlock: Combine ‘useSelect’ hooksHooksIn 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.. (55889)
DataViews: Add: Ability to delete custom views. (55924)
DataViews: Add: Custom views headerHeaderThe header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. indication. (55926)
DataViews: Remove unnecessary label when no visible filters exist. (55838)
Documentation
Add a first block type page to the platform documentation. (56109)
Add new block development “Quick Start Guide” and update the create-block-tutorial-template. (56056)
Clean up DataViews docs: filter.id is not used. (55833)
DataViews: Document enableSorting and enableHiding. (55988)
Fix: 404 link in get-started-with-create-block docs. (55932)
Fix: Create metaMetaMeta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. block link in block attributes documentation. (55804)
Fix: Filter duotone link on block-supports documentation. (55896)
Fix: Two invalidinvalidA resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid. links on docs/contributors/documentation/README.md. (55843)
Update documentation to clarify workflow branchbranchA directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch". for release package publishing. (56183)
Rich text: highlight format: Gracefully handle old span format. (56071)
Update Link Control labels to use gray-900. (55867)
Components
DisclosureContent: Migrate from reakit to @ariakit/react. (55639)
Divider: Migrate from reakit to @ariakit/react. (55622)
RadioGroup: Migrate from reakit to ariakit. (55580)
Site Editor
Core Data: Move the template lookup to core-data selectors/resolvers. (55883)
Don’t use ‘useEntityRecord’ to only dispatch actions. (56076)
Block Library
Navigation: Refactor the PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher render function to make it easier to make changes in the future. (55605)
Data: Fix ESLint warnings for the ‘useSelect’ hook. (55916)
Post Editor
Edit Post: Use a single ‘useSelect’ hook for getting selectors. (55902)
Colors
Add Unit testing for duotone enhanced pagination. (55542)
Patterns
Split up the block editor inserter patterns tab into separate component files. (55315)
Design Tools
Block styles: Remove __unstableElementContext in favour of useStyleOverride. (54493)
Tools
Issue Templates: Add default type labels to issue templates. (55826)
Label enforcer: Make the warning message less scary for new contributors. (55900)
Quote feature requestfeature requestA feature request should generally begin the process in the ideas forum, on a mailing list, as a plugin, or brought to the attention of the core team, such as through scope meetings held for each major release. Unsolicited tickets of this variety are typically, therefore, discouraged. label. (55862)
Testing
Disable ‘no-conditional-in-test’ ESLint rule for Playwright. (56088)
Fix ‘Block Switcher’ test file name for Playwright end-to-end tests. (55840)
“What’s new in GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/…” posts (labeled with the #gutenberg-new tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg.
WordPress 6.4 “Shirley” became available earlier this week. Despite this significant milestone, the Gutenberg pluginPluginA plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party continues to iterate with a new version: Gutenberg 17.0. This release focuses on maintenance with improvements in performance and accessibilityAccessibilityAccessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility), along with a few new features.
Command Palette: improved contextual suggestions when editing patterns
The popular Command Palette keeps getting better! Since this release, editing patterns inside the site editor will suggest pattern-related commands that adjust better to the context, such as renaming and duplicating the pattern. Small quality-of-life changes like this are what make the Command Palette a joy to use, and future iterations will surely bring us many more improvements in this direction!
DropdownMenu: a glimpse into the next generation of WordPress components
As part of the ongoing efforts to refine the components that power the BlockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. Editor, Gutenberg 17.0 brings a new, alternative implementation of the DropdownMenu component based on the Ariakit open-source library. This implementation, although still experimental, offers a good glimpse at what the future of WordPress components holds.
As a reminder, you can check and play with this and other components in the Components Storybook!
Additional visual cues for LinkControl
When searching through the LinkControl, new Block and Home icons are added next to results related to the home and front pages, respectively. These visual cues intend to make finding what you’re looking for easier.
Iterating on Accessibility and Performance
As usual, this Gutenberg release provides a few iterative performance and accessibility improvements.
On the accessibility side of things, it’s worth noting the Autocomplete Voiceover now announces suggestions, among other a11yAccessibilityAccessibility (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) enhancements to the Navigation block and Query LoopLoopThe Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop. block. Regarding performance, some controls like duotone, layout, and alignment have been optimized.
Changelog
Full changelog available here
Enhancements
Link Control
Add blogblog(versus network, site) icon to the blog home page in LinkControl search results. (55610)
Add home icon to the front page in LinkControl results. (55606)
Block Theme Preview
Block Theme Preview: Display loading state when activating. (55658)
Adjust the padding of the categoryCategoryThe 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. item to make it visually balanced. (55598)
Patterns
Suggest commands when editing pattern in site editor. (55332)
Bug Fixes
Fix autocomplete trigger character detection. (55301)
Block Editor: Avoid rendering empty Slot for block alignments. (55689)
Block Example: Avoid a crash when block is not registered. (55686)
Command Palette
Command Palette: Fix a crash when transform to a block without icon. (55676)
Link Control
Fix: LinkControl on site editor does not show font page and post page indication. (55694)
Fix: LinkControl on widgets editor does not show font page and post page indication. (55732)
Interactivity APIAPIAn API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.
Fix: Update page title when using enhanced pagination in query loop. (55446)
Block Library
Fix: Post terms block: Missing options for prefix and suffix when the…. (55726)
Ensure Term Description block is registered in coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress.. (55669)
Image block: Wrap images with hrefs in an A tagtagA 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.). (55470)
Image: Improve focus management in lightbox. (55428)
Image: Update default fullscreen icon for lightbox trigger. (55463)
Navigation block: Remove browser default padding from the two submenu buttons. (50943)
Query Loop: Disallow “enhanced pagination” with core blocks that may contain third-party blocks. (55539)
Query: Require queryId for enhanced pagination to prevent PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher notices. (55720)
Update label for lightbox editor UIUIUser interface. (55724)
[Block] File: Fix embedded PDF files in Safari. (55667)
Patterns
Fix bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. with authors and contributors not seeing user pattern categories. (55553)
List all users in author filterFilterFilters 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.. (55723)
Don’t register dataviews postype and taxonomyTaxonomyA taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies. if experiment is disabled. (55743)
Design Tools
Remove default dimensions controls from core/avatarAvatarAn avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name.. (55596)
Interactivity API
Fix server processing of an empty data-wp-context directive. (55482)
Make duotone support compatible with enhanced pagination. (55415)
Make layout support compatible with enhanced pagination. (55416)
Global Styles
Fix duotone not showing in site editor style block level styles. (55361)
Accessibility
Block Library
Navigation block: Change aria-haspopup to dialog. (55466)
Components
Autocomplete: Fix Voiceover not announcing suggestions. (54902)
Interactivity API
Query Loop: Update modal role and focus first element. (54507)
Performance
Add useSettings hook for reading multiple settings at once. (55337)
Start logging site editor metrics in codevitals. (55759)
useAvailableAlignments: Avoid useSelect subscription when alignments array is empty. (55449)
Experiments
Data Views
TrashTrashTrash in WordPress is like the Recycle Bin on your PC or Trash in your Macintosh computer. Users with the proper permission level (administrators and editors) have the ability to delete a post, page, and/or comments. When you delete the item, it is moved to the trash folder where it will remain for 30 days. Data View: Use trash icon. (55771)
[Try] HTTPHTTPHTTP 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. based PHP signaling server for colaborative editing. (53922)
Documentation
Adds a few grammar fixes to block-registration documentation. (55663)
Block JSONJSONJSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. schema: Add heading/button key to color definition. (55675)
Docs: SidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. Block editor handbook – create-block before wp-scripts. (55534)
BackportbackportA port is when code from one branch (or trunk) is merged into another branch or trunk. Some changes in WordPress point releases are the result of backporting code from trunk to the release branch. updates from Core during the 6.4 release cycle. (55703)
You must be logged in to post a comment.