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.
This is a summary of a Hallway Hangout that was wrangled in the #accessibility channel after a prior hallway hangout on improving 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) in the Site Editor and took the new form of a concrete working session to address a specific problem. It was first announced on October 1st and was open to all.
To kick off, Joe asked Alex to talk through the current pain points and differences between modes. As Alex said, navigation mode is a hackedhacked together feature. The biggest problem we have, the navigation mode is a dynamically updating button. Everytime you press your arrow key or tab key when you’re in navigation mode, it dynamically re-renders. This is a challenging problem to handle with screen readers because it’ll ignore this. For Windows, there’s also a longstanding issue where the arrow keys don’t actually send the keyboard events through the browser so tab is the only viable key. Conversely, List View is much simpler in the way you can navigate with keys and it’s wrapped in a navigation role. You are able to expand rows, have control over what you’re looking at, etc. Another current problem with navigation mode, it’s not entirely clear when there are inner blocks. Alex started to work on this but stopped to focus on list view.
What are the consequences if we stripped out navigation mode and used list view as the primary way of browsing through blocks?
To date, there has been no modal, tips, etc for keyboard users in the editor. People who are used to this would have no idea it has changed and we need a way to communicate that change, perhaps using a similar approach to the change in template parts to the patterns section.
Andrea, who helped implement navigation mode, offered some historical context. He shared that if we are going to use navigation mode, we’re going to reintroduce a major issue that existed before introducing the two modes. Imagine that a post contains dozens of blocks. If you want to navigate these blocks in the post content area with the tab key, you are going to have to go through all of the dozens of blocks including the interface of each 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. (dozens of tab stops). Nav mode was originally meant to reduce the number of tab stops when navigating through the blocks in a way that each block was only one tab stop rather than multiple then pressing enter gives the ability to switch the block to edit mode where you can navigate inside the block. This was the original implementation and it made sense when there were no inner blocks.
Joe noted that List View works the same way where you can go block to block. When you use the tab key you are going through all of these elements. However, there are still a lot fewer elements than going through the blocks themselves. We should be willing to compromise to some degree. Arrow key navigation in List View also does work. It’s 100% accessibility and there are a total of three tabbable elements in list view: tab panel, close button, and list view area itself.
Alex would like to find a better way to manage focus between block editor and block 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. but that’s a broader discussion. Jerry and Alex have worked on this but it’s a long battle.
Trying List View + Focus Mode for container blocks as an experiment
Anne pitched trying getting rid of navigation mode and use list view + focus mode as an experiment 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/. We could then do a call for testing and get a sense of what the experience might be like more practically. Folks were very much onboard with trying this out, especially since in the long run this would reduce the number of mechanisms to maintain.
The question of how many people are used to using navigation mode came up though, especially since the feedback folks are worried about is more about non screen reader users. Anne is going to try to get some initial data from WordPress.comWordPress.comAn online implementation of WordPress code that lets you immediately access a new WordPress environment to publish your content. WordPress.com is a private company owned by Automattic that hosts the largest multisite in the world. This is arguably the best place to start blogging if you have never touched WordPress before. https://wordpress.com/.
Mobile concerns
Rich chimed in that the current primary use for that view is on mobile devices as this makes it easier to select child first nested blocks so it’s easy to tap onto. We never really got to the bottom of this on the call as we all pulled out our phones to investigate and couldn’t figure out how to even evoke the mode.
Locked blocks and inert
We discussed how to explain disabled blocks in List View which relates to a broader discussion on alternatives to inert. There’s no good way to explain to a blind user what a template looks like when editing a smaller portion like a page. Anne showed an option to toggle on/off a template preview when editing a page in the Site Editor and we discussed a few ways we could enhance that feature to save it as a preference/have it be persistent in some way.
Focus mode concerns
We discussed Focus Mode and adding it to Container Blocks. A big piece to figure out is how the back button works and ensuring it returns you to where you’d expect in the Site Editor experience.
Gutenberg as a framework concerns
Alex brought up an excellent point around Gutenberg being used as a framework, like with Blocks Everywhere, and how navigation mode is built into it as a package. We need to consider this in removing the navigation mode and it might be that it remains for third party usage.
“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)
“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.
After a successful implementation of renaming Group blocks in Gutenberg 16.7 and feedback that the feature should be opened up, version 16.9 lets you rename nearly every block. A bonus for this feature is that theme authors can use this to label blocks in their theme templates and patterns.
There are a few blocks that cannot be renamed:
core/block
core/template-part
core/pattern
core/navigation
Duplicate and rename patterns and more
Pattern management is getting a lot of nice feature additions. For individual patterns, you can now rename or duplicate them:
Gutenberg 16.9 also introduces two new media categories: Audio and Video. This should help better organize patterns by media type.
Other Notable Highlights
The Dimensions design tool control’s layout is much improved (55060).
The Template Part 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. now falls back to the current theme is there is no theme attribute provided (55217).
A ton of CSSCSSCascading Style Sheets. Level 4 viewport-relative units are now supported for more flexible control over various sizing options (54415).
getEntityRecords() calls now return pagination totals in the returned data (55164).
Enable Block Renaming support for (almost) all blocks. (54426)
Enhancements
Command 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.
Add block-specific commands as contextual suggestions [#53539]. (53974)
Add type="button" to vanilla <button> elements. (55125)
ConfirmDialog: Ts 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. storybook. (54954)
GradientPicker: Remove padding and disable overflow of color picker popovers. (55265)
Migrate Composite component from reakit to ariakit. (54225)
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 PostExcerpt. (55189)
Design Tools
Allow using CSS level 4 viewport-relative units. (54415)
Migrating AddCustomTemplateModalContent to use updated Composite implementation. (55256)
Private APIs
Update consent string for using private APIs. (55182)
New APIs
CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. Data: Retrieve the pagination totals in the getEntityRecords calls. (55164)
Bug Fixes
Block Library
PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher notice when an image with lightbox is deleted. (55370)
Cover Block: Check for previously uploaded media before setting the dimRatio. (55422)
Cover: Fix media type check in the onSelectMedia hook. (55168)
Fix Block Rename UIUIUser interface perf 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.. (55250)
Fix PHP notice when an image with lightbox is deleted in the behaviors file. (55385)
Fix: Wrong condition on cover block dimRatioToClass. (55356)
Image: Fix Lightbox display bug in Classic Themes. (54837)
Latest Posts: Add screen reader title text to Read more links and use alternative to excerpt_morefilterFilterFilters 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.. (55029)
Latest Posts: Sync updates from Core (6.4). (55181)
List View: Change the aria-description attribute to aria-describedby. (55264)
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: Reuse existing screen-reader-text CSS class for the enhanced pagination aria-live region. (55309)
Site Editor
Alternative: Fix template part area listing when a template has no edits. (55115)
Do not display ‘trashed’ navigation menus in 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.. (55072)
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. / block drag chip: Fix positioning when dragging over an iframe. (55150)
ProgressBar: Use text color to ensure enough contrast against background. (55285)
Make date 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. translatable. (55445)
Patterns
Add categoryCategoryThe 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. selector to pattern creation modal. (55024)
HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. API
Fix: Directive processor failing on updated HTML API. (55404)
Widgets Editor
Only suppress adminadmin(and super admin) notices when 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/. is enabled. (55403)
Add selector as id to layout style overrides. (55291)
History
Try: Only render LastRevision component if 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 is active. (55253)
Block Directory
Fix filtering for downloadable blocks in inserter. (55243)
Global Styles
Use all the settings origins for a block that consumes paths with merge. (55219)
Post Editor
Fix wrong notification message shown when an entity is moved to 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.. (55155)
Typography
Font Library: Show error if fetching collection fails. (54919)
Colors
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 No color selected translatable text. (54814)
Rich Text
Paste: Only link selection if URLURLA specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org protocol is http(s). (53000)
Patterns
Remove the version enforcement for npm in engines field. (55245)
Code Quality
Fix: Use y-webrtc room name terminology instead of docName. (55260)
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)
Global Styles
Fix flickering when focusing on global style variations. (55267)
Interactivity API
Fix Image block lightbox missing alt attribute and improve accessibility. (55010)
Components
Modal: Fix closing when contained iframe is focused. (51602)
Block Library
Cover: Add aria-label to fixed and repeated image backgrounds. (50990)
Add 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. field to the page list. (55246)
Adds a control to the views actions to switch layouts. (55311)
Add author and status filter to the page list. (55270)
Documentation
Add “Get started with create-block” doc to the Getting Started section. (55373)
Add a “Get started with wp-scripts” doc to the Getting Started section. (55372)
Add backgroundImage to the 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. documentation for appearanceTools. (55376)
Add initial documentation for the DataViews component. (55435)
Augment Block.Edit filter documentation with performance guidance. (55252)
Correct the documented type for the $w parameter of block_core_navigation_add_directives_to_submenu(). (53585)
Document kind, name, plural for entity configuration. (55158)
Document updating the consent string to unlock private APIs. (55235)
Explain how to translate Gutenberg in standalone apps using the editor packages. (55080)
Fix callouts in end-to-end test documentation. (55300)
Fix code formatting due to bug in the “Get started with wp-env” doc. (55458)
Fix the position of the callout in the “Get started with wp-scripts” doc. (55457)
Font Library: Change all references to 6.4.0 by 6.5.0 core version. (55320)
Initial documentation of entity configuration. (55103)
PHP lib docs: Update to include information about prefixes in block PHP code. (55402)
Platform docs: Add a page to explain how to render HTML from a list of blocks. (55140)
Remove @return void from PHP function docs. (55237)
Last week we had security and maintenance releases for both WordPress and the 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/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: https://wordpress.org/news/2023/10/wordpress-6-3-2-maintenance-and-security-release/ and https://github.com/WordPress/gutenberg/releases/tag/v16.8.1. Please make sure they are both updated. WordPress 6.4 RC1 was released on October 17 https://wordpress.org/news/2023/10/wordpress-6-4-release-candidate-1/.
Open floor
There were two questions raised by Andrei Glingeanu.
Question 1:
Is the possibility of adding custom tabs here prohibited intentionally?
Print screen of 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. inspector 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. with a custom item added at the side of the page and block.
We never added extensibility api’s to create new tabs there. There was not an intentional decision to never do it, but there was also never a decision to do it. I guess the best bet for now is to create a custom sidebar.
Question 2:
Is there a standard way of outputting dynamic css for a custom block besides putting it inline in style="" attributes and without outputting <style> tags in the edit function of the block?
If the dynamic CSSCSSCascading Style Sheets. styles you want to add should affect just a single instance of the block I think using the style attribute may be the way to go.
If the dynamic CSS styles you want to add should affect all the instances of your custom block, I guess a good option is to use the global styles filters and 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. 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. to add the styles you want for the block dynamically.
If it is dynamic but there is a limited set of different possible styles e.g.: dynamic but there are like 5 different style configurations. Probably creating classes as part of the block styles CSS and then dynamically deciding which class to add to the block seems to be the way to go.
Early last year, a plan was outlined to phase out all Puppeteer usage across WordPress coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. and 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/ step by step. Since then, a lot of progress has been made:
The @wordpress/e2e-test-utils-playwright package has become more mature and already provides many useful utilities that cover the needs for core and Gutenberg.
The @wordpress/scripts package, which is widely used in the ecosystem, now not only supports Puppeteer but also Playwright, making it straightforward for projects to migrate their existing setups.
The majority of e2e tests in Gutenberg have already been migrated from Puppeteer to Playwright, as can be seen in this tracking issue. This includes all performance tests.
Now, another major milestone has been reached: all browser-based tests in WordPress core now use Playwright! This includes end-to-end (e2e) tests, performance tests, and visual 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. tests. See #59517 for full details.
How does this affect contributors?
As mentioned in the original proposal, Playwright makes it easier to write stable tests. Thanks to a built-in test runner with superior debugging tools, auto-waiting, and advanced selectors support, Playwright offers the tools necessary to write tests that are easy to understand and cause less headaches because of random timeouts or similar. It also supports many browsers out of the box, which will help strengthen the end-to-end test coverage in core.
Since Playwright is originally a forked version of Puppeteer, it offers a very similar 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., so contributors writing and debugging tests should be familiar with the way things work.
If you want to get familiar with Playwright, check out Gutenberg’s migration guide as well as the official Playwright documentation. The migrationMigrationMoving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. guide can be used to migrate Puppeteer-based tests from unmerged patches/PRs to the new setup.
Playwright support was just added recently, so you might need to run npm install first to ensure the latest dependencies are installed.
Note: If you previously ran visual regression tests using npm run test:visual, the storage location for visual snapshots was changed from tests/visual-regression/specs/image_snapshots to tests/visual-regression/specs/snapshots. You can safely remove the files from the old folder if they show up in version controlversion controlA version control system keeps track of the source code and revisions to the source code. WordPress uses Subversion (SVN) for version control, with Git mirrors for most repositories..
There are two new 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/ > Experiments to explore: Live Collaboration and offline persistence (available in current version) & New admin views (coming in 16.8).
getting the code mirror inline code editing added to the custom css input box in global styles via lazy loading. If anyone has any thoughts on lazy loading a large lib like this feel free to comment on the PR
Open Floor
@colorful-tones suggested the example used for 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.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.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. to be changed from the current “Like button” to something static so that developers do not end up confused as to wether they need to use interactive blocks for block hooks.
@fabiankaegy raised awareness on a current 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. affecting WordPress 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. release where in a query block only the currently selected block renders styling and other updates. The issue already has a PR but we need to make sure there is enough focus on this to get it solved before the release is shipped.
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/ 16.8? (11 October)
“What’s new in 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 latest release includes many 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, some new experiments, and essential groundwork for the future Phase 3.
Cover 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.: automatically set overlay color when applying the initial background image
The Cover Block just got a bit smarter by setting an Overlay color based on the background image. The Overlay color is extracted from the image via magic (actually, code, which you can see coming into existence here (#54054).
Show template toggle when editing pages
This great new option allows you to see your Pages within the Template context where they’re meant to be displayed while you edit them. As @noisysocks puts it:
Allows users to focus on their content when desired. Moreover, it is small a step towards one day unifying the post editor and site editor.
All about decluttering: font uploads have been moved to a separate tab within the Font Library interface. The team has also worked on improving error messages and their visibility.
Other notable highlights
Footnotes now make use of coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress.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. revisioning capabilities when available. Gutenberg PR (#52988) and Trac Ticket (#20564).
Experiment: the first version of the pages list in the site editor (#54966). This experiment is one of many pieces of the Data Views work (#55083), crucial for Phase 3.
Add template replace flow to template inspector (#54609).
Remove base URLURLA specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org from link control search results. (54553)
Update strings in blocks ‘RenameModal’ component. (54887)
Post Editor
Edit Post: 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 ‘PostStatus’ components. (54951)
Editor: Use hooks instead of HoCs in ‘PostSticky’ components. (54949)
Editor: Use hooks instead of HoCs in ‘PostSwitchToDraftButton’. (54695)
Show confirmation dialog when moving a post to the 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.. (50219)
Site Editor
Add template replace flow to template inspector. (54609)
[Site Editor]: Update copy of using the default template in a page. (54728)
Patterns
Remove categoryCategoryThe 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. description in inserter panel. (54894)
Typography
Font Library: Refactor endpoint permissions. (54829)
Fallback to Twitter provider when embedding X URLs. (54876)
Fix Deleted 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. warning string. (55033)
Fix Search Block not updating in Nav block. (54823)
Fix left and right aligmnent in children of Post Template. (54997)
Fix output of Navigation block classnames in the editor. (54992)
Fix overwriting of published post meta when previewing footnote changes. (54339)
Image: Ensure Expand on Click toggle is shown if block-level lightbox setting exists. (54878)
Image: Fix layout shift when lightbox is opened and closed. (53026)
Media & Text: Fix ReactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. warning. (55038)
Search block: Allow space for input field only when form expanded. (54846)
Search block: Update alignment and icon button width. (54773)
Site Editor
Avoid same key warnings in template parts area listings. (54863)
Avoid stale navigation block values when parsing entity record. (54996)
Don’t display the navigation section in template parts details when a menu is missing. (54993)
Reset ‘Show template’ toggle when leaving edit mode. (54679)
remove overflow: Hidden from the entity title in the 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.. (54769)
Components
FormTokenField: Add box-sizing reset style and reset default padding. (54734)
Popover: Fix the styles for components that use emotion within popovers. (54912)
Remove hover style for secondary Button when aria-disabled is set. (54978)
Reverting addition of aria-selected style hook in Button. (54931)
SlotFill: Pass Component instance to unregisterSlot. (54765)
Block Editor
Avoid double-wrapping selectors when transforming the styles. (54981)
[Inserter]: Fix reset of registered media categories. (55012)
Typography
Font Library: Changed the OTF mime type expected value to be what PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher returns. (54886)
Font Library: Move font uploads to a new tab. (54655)
Image: Ensure false values are preserved in memory when defined 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.. (54639)
List View
Fix performance issue when selecting all blocks. (54900)
Colors
Format Library: Try to fix highlight popover jumping. (54736)
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.
Image: Fix duotone not being applied to lightbox image. (54670)
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)
Block Library
Footnotes: Add aria-label to return links. (54843)
Components
HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. block: Fix accessibility issues on back-end. (54408)
Modal: Accessibly hide/show outer modal when nested. (54743)
Patterns
Use list role instead of listbox in patterns list. (54884)
Post Editor
Editor: Always render the ‘Switch to Draft’ button to avoid focus loss. (54722)
Block Editor
Block Switcher: Use a different label for multi-selection. (54692)
Performance
Tests: Support the Site Editor’s legacy spinner. (54784)
WordPress 6.4BetaBetaA 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. 2 is available for testing.
Gutenberg 16.8.0RCrelease 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). 1 is available for testing.
Async key project updates
Read the latest updates directly from the following tracking issues:
The Font Library’s 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/. has been significantly redesigned. It’ll need testing and release to gain wider in the wild testing.
@vcanales I’m wondering if we are open to releasing 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/ 16.8.0 on Monday rather than Wednesday so that the new 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. makes it to a release before Beta 3.
Note: Anyone reading this summary outside of the meeting, please drop a comment in the post summary, if you can/want to help with something.
Gutenberg plugin 16.7 was released today. A big thank you to @mikachan for handling the release! Beta 1 of WordPress 6.4 was released yesterday. Only fixes can be added during a 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. period. The current release target is 7th of November. WordPress 6.4 Editor Tasks.
Key project updates:
Here is a new list of key updates. Thanks to @bph for gathering this list.
During translationtranslationThe process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. I noticed that some strings about the pattern directory were added… So, I wonder the new string “Directory” about what is it talking? Since in Dutch that can mean two things. I created this ticketticketCreated for both bug reports and feature development on the bug tracker. for it: Translator confusion about “Directory” Also, isn’t a verb missing here? See more details in this 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/ issue. Missing verb in string?
“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.
16.7 is the last Gutenberg release ahead of the upcoming WordPress 6.4 release, so it’s packed with features 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. Exciting new features include the new Font Library for font management within the editor, lots of enhancements to pattern management, simplified lightbox functionality, and many UXUXUser experience enhancements.
This release consists of 331 pull requests authored by 88 contributors, including 7 new contributors! 🥳 🎉
The new Font Library allows users to install, remove, and activate typographic fonts from various sources in WordPress via the editor. The installed fonts are enabled globally, independent of the active theme in the /wp-content/fonts directory, similar to the Media Library. As part of this new feature, users can add fonts manually by uploading them from their local machine or choosing from a list of Google Fonts. (#53884 & #53307)
Import/Export of Patterns
It’s now possible to import and export patterns 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. files directly from the site editor’s patterns screen. This change mirrors the existing import/export functionality in the /wp-admin patterns screen, making it more straightforward for all users to migrate patterns between sites. (#54337)
Explore New Pattern Filtering
Pattern filters have been restructured, with filters now being housed within a dropdown at the top of the pattern list panel. A sticky 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. has also been added to the top of the list panel for improved navigation. (#54681)
Naming Group Blocks in the Editor
Group blocks can now be named using custom naming. Naming these blocks will update their name in the List View, making it easier to distinguish between blocks. This enhancementenhancementEnhancements are simple improvements to WordPress, such as the addition of a hook, a new feature, or an improvement to an existing feature. marks another step forward as the Site Editor’s tools and features continue to expand. (#53735)
“My Patterns” CategoryCategoryThe 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. Reinstated in Post Editor Inserter
Prompted by feedback, the “My patterns” category has been reintroduced to the post editor’s inserter, providing a central place for users to view their custom patterns. (#54767)
Simplified Lightbox Functionality for Images
The Behaviors UIUIUser interface introduced as an experimental feature in Gutenberg 15.9 has been removed and replaced with an “Expand on click” toggle in the Image 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.’s Inspector Controls and in the Global Styles. (#54509) (#54509)
The support for Behaviors in the theme.json has also been deprecated and will be removed completely in Gutenberg 17.0:
Users who enabled the “lightbox” behavior in their theme.json file should migrate to a new syntax where the lightbox is simply a new block-level setting:
Note that the support for the “animation” value has been removed.
If you enabled the lightbox on any Image blocks using the previous Behaviors UI, please open and re-save posts that include those blocks to ensure they get migrated to the latest syntax.
With the removal of support for the “animation” value, all images will now only use the “expand” (zoom) animation, even if they had previously used the “fade” animation.
Background Image Control Added to Group Block
Background image support has been added to the Group block, in line with the color controls. (#53934 & #54439)
New Social Link Icon for X
A new social link icon has been added for the X service. It can be found when searching for “X” or “Twitter”. (#54092)
BlockSettingsMenu: Ensure only one block settings menu is open at a time. (54083)
Bundle the block copy handler within the BlockCanvas component. (54207)
Bundle the block selection clearer hook into the BlockCanvas component. (54209)
Ensure that ‘Duotone 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.’ color pickers have relevant labels. (54468)
Export ProgressBar to allow it to be used. (54404)
FormTokenField – add prop to allow saving of tokens onBlur. (53976)
SearchControl: Allow for 32px compact size, introduce option to change default size to 40px. (54548)
Block Library
#39457: Image block keep image size on replacing image. (49982)
Add __next40pxDefaultSize to 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. opacity control. (54389)
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.
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 design enhancements for the “enhanced pagination” setting. (54455)
Query Loop: Allow “enhanced pagination” only with core blocks. (54347)
Query block: Start prefetching on first click to next/previous. (54781)
Patterns
Add categories to user patterns, and allow filtering by these in site and post editor. (53835)
Add editing of pattern categories to site editor. (54640)
Add user categories to 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. navigation screen. (53837)
Add user pattern categories to post editor inserter patterns tab. (53933)
Apply white background to the preview as a fallback. (54534)
Merge unsynced into inserter patterns tab and add paging and filtering. (54007)
Block editor: 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.: Fix rules of hooks violations (2). (48943)
Always show the total number of patterns even with only one page. (54813)
Typography
Font Face: 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 changeset 56500. (54218)
Font Library: Changing the upload directory to wp-content/fonts. (54122)
Font Library: Load collection JSON data from a URLURLA specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org in the collection configuration. (54067)
Font Library: Use wporg cdn to host the google fonts json data. (54795)
Themes
Theme Previews: Make the back button customizable. (54242)
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
Remove ‘Footnotes’ and ‘Comments’ from the non-dynamic block registration list. (54154)
Media
Correct function name handleFileChange is replaced by wrong function name. (52250)
List View
Allow Escape key to deselect blocks if blocks are selected. (48708)
Try directing focus to the list view toggle button when closing the list view. (54175)
Add useStateWithHistory hook and use to show a block editor with undo/redo. (54377)
BlockEditor: Add BlockCanvas component = 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. + BlockList + WritingFlow. (54149)
CreateTemplatePartModal: Disable the ‘Create’ button while saving. (54716)
Plugin
Ensure font-face styles are printed in iframe editors. (54313)
Font Face & Font Library: Load PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher files only if the main class does not exist. (54103)
Gutenberg Plugin: Add hook to allow writing-mode as a safe CSS property. (54581)
Update cherry-pick script to correctly verify 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/CLICLICommand Line Interface. Terminal (Bash) in Mac, Command Prompt in Windows, or WP-CLI for WordPress. setup. (54720)
Font Library: Ensure merged fontFace data is enconded as an array instead of an object. (54435)
Font Library: Fix duplicate variants with different file types. (54490)
Font Library: Setting wp_font_family custom post typeCustom Post TypeWordPress can hold and display many different types of content. A single item of such a content is generally called a post, although post is also a specific post type. Custom Post Types gives your site the ability to have templated posts, to simplify the concept. as _builtin and not plublic. (54559)
Font Face: Get name from “fontFamily” setting, not “name”. (54615)
Font Library: Fix modal width on mobile viewport. (54518)
Font Library: Fix space above theme fonts in font library modal. (54598)
Font Library: Fix error installing system fonts. (54713)
Font Library: Remove font files created by tests after tests run. (54771)
Font Library: Avoid rendering font library ui outisde gutenberg plugin. (54830)
Edit Widgets: Fix invisible action area when the top toolbar is enabled. (54329)
Fix top toolbar for the customizerCustomizerTool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings. widgets sidebar control. (54255)
Global Styles
Font Library: Fix notification error for actions related to custom fonts. (54535)
Prevent layout changes from saving the whole inherited settings object. (54500)
Block API
Blocks: Fix incorrect placement for hooked blocks in the parent container. (54349)
Pass correct content argument to enter transforms. (54108)
Block Hooks: Avoid processing empty content for loaded templates. (54719)
Rich Text
Revert: Rich text: Copy 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.) name on internal paste. (54301)
Interactivity API
Image: Fix block serialization test case to cover deprecation of behaviors. (54570)
Query Loop: Select first anchor inside Post Template with “enhanced pagination” enabled. (54730)
Icons
Fix ReactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. forwardRef warnings for TooltipAnchors. (54492)
History
Fix extra undo/redo step when removing or replacing all blocks. (54457)
Synced Patterns
Patterns: Apply layout and alignment to synced patterns in the editor. (54416)
npm Packages
Workflow: Fix the issue with npm publishing for WP major version. (54088)
Media
useMediaQuery: Avoid crashing on Safari < 14. (54023)
Nested / Inner Blocks
Fix: InnerBlocks allowed blocks change with different sizes. (53943)
Layout
Post Content: Ensure layout classnames are applied in readonly preview. (53864)
React 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.
Fix: InvalidinvalidA resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid. import in react-i18n documentation. (54308)
Design Tools
Background Image control: Use consistent button, ensure descriptive text accounts for no image selected. (54711)
Collaborative Editing
Make sure sync code only runs when experiment is enabled. (54710)
Core Data
core-data: Fix nested property access with undefined name. (54790)
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)
Block Library
Comments form: Accessibility fixes for back-end. (54393)
Updates Edit and Save code examples to have matching open/closing tags. (53915)
[Docs: Getting Started / Block Development Environment] Updates on the text to improve clarity and preciseness. (54563)
documentation – Contribution TriagetriageThe act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors.: Formatted text and changed some titles and structure. (54258)
documentation [Block Editor Handbook / Getting Started / Block Development Environment]: Fix links. (54571)
Add missing global declaration in DocBlockdocblock(phpdoc, xref, inline docs) of interactivity files. (54683)
Block editor: Remove __unstableElementContext and filter EditorStyles instead. (52888)
Improving error messages and codes in jest-console, matcher.js. (53743)
Indicate nested paths on __experimentalSaveSpecifiedEntityEdits. (54161)
JSJSJavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. unit tests: Update popover matcher. (54168)
Image Editor: Fix ESLint warnings and remove unnecessary dependencies. (53506)
Pattern Category: Set ‘publicly_queryable’ to false. (54567)
Post Terms: Fix a ‘useSelect’ warning in the ‘usePostTerms’ hook. (54068)
Interactivity API
Prepare image lightbox for private version of the Interactivity API in 6 4. (54547)
Remove gutenberg_should_block_use_interactivity_api and the old implementation of interactive blocks. (54297)
Search block: Switch interactivity to the Interactivity API. (53343)
Site Editor
Remove Tooltip workarounds added in the site and block editor. (54450)
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.: Remove ‘gutenberg’ query param from revisions.php. (54166)
Puppeteer tests: Try to fix failing tests related to notices in core. (54452)
Remove accidental addition of perf test results (2). (54363)
Remove accidental addition of perf test results. (54355)
Update WPCSWPCSThe collection of PHP_CodeSniffer rules (sniffs) used to format and validate PHP code developed for WordPress according to the WordPress Coding Standards.
May also be an acronym referring to the Accessibility, PHP, JavaScript, CSS, HTML, etc. coding standards as published in the WordPress Coding Standards Handbook. to v3.0, and fix all reported Coding Standards issues. (53866)