The WordPress coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. development team builds WordPress! Follow this site for general updates, status reports, and the occasional code debate. There’s lots of ways to contribute:
Found a bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority.?Create a ticket in the bug tracker.
“What’s new in GutenbergGutenbergThe Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/…” posts (labeled with the #gutenberg-new tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg and the 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).
Video showing how media blocks now show a toggled link button when linked, pressing Enter twice in the buttons block to escape it, and pressing CMD+A successively to expand the selection range.
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).
New block spacing control in the quote block.
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 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)
Welcome back to a new issue of Week in CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress.. Let’s take a look at what changed on TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between September 4 and October 9, 2023.
Please note that exceptionally and because of personal vacations, this Week in Core issue covers 4 weeks 😊
269 commits
337 contributors
295 tickets created
43 tickets reopened
277 tickets closed
TicketticketCreated for both bug reports and feature development on the bug tracker. numbers are based on the Trac timeline for the period above. The following is a summary of commits, organized by component and/or focus.
Hey, everyone! It’s that time of the year. A brand new default theme will be featured with the next WordPress 6.4 release: Twenty Twenty-Four.
The Concept
The idea behind Twenty Twenty-Four is to make a default theme that can be used on any type of site, with any topic. Because of that, and contrary to past years, it has no single topic. Instead, three use cases were explored: one more tailored for entrepreneurs and small businesses, one tailored for photographers and artists and one specifically tailored for writers and bloggers. In essence, it’s a collection of templates and patterns which, all combined, make up a theme. These patterns include different Home templates for different use cases such as an About page, project overviews, RSVPs, and landing pages.
Twenty Twenty-Four’s styles and elements are instantly recognizable, inspired by modern design trends. The theme uses Cardo font for headlines, which provides a hint of elegance and a sans-serif system font for paragraphs. The default color palette of Twenty Twenty Four is light, and it also includes a dark style variation that maintains the same typography. Additionally, there are two more sans-serif variations available: one in light mode and another in dark mode.
Twenty Twenty-Four will be a 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. theme fully compatible with all the site editor tooling and it will surface new design tools like the details block or vertical text. Another key intent for the theme is to properly present whole page patterns and template variations so that users don’t need to assemble whole pages themselves, thus easing up their site building process.
Thanks to Twenty Twenty-Four’s remarkable flexibility and adaptability, a multitude of possibilities open up with just a few adjustments to color and typography. This beautiful theme was designed by Beatriz Fialho.
Development
As part of the 6.4 release, Maggie Cabrera and Jessica Lyschik are leading development. We are looking forward to your involvement and support throughout the process. If you’re interested in contributing, make sure you’re following this blogblog(versus network, site).
There’s a guiding Figma file that will continue to be updated as work progresses.
Theme development will happen on 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/ and, as usual, once the theme is stable, it will be merged into CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. and its GitHub repository will be deprecated. A repository has been created here that you can follow if you’d like:
“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 version 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, many focused on enriching the Command Palette and enabling further customization of blocks. It features contributions from 63 contributors across 219 pull requests, including five new contributors! 🥳
“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.4 introduces some exciting new features, including both a new experimental feature and a new component, alongside many 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. Bug fix highlights include many improvements to the recently added Footnotes 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 enhancements to Patterns.
This release consists of 184 pull requests authored by 60 contributors, including two new contributors! 🥳
Auto-Inserting Blocks (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.)
Activating the new “Auto-inserting blocks” feature on the Gutenberg > Experiments page enables blocks to specify a location in which they will be automatically inserted. This applies both to the frontend and to the Site Editor (via 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/.), allowing for further user customization.
See an example in the video below of a “Like button” block that has been auto-inserted after each Comment Template block. You can also see how this block can be re-positioned using the existing block editor tools.
To try this new experimental feature, you can add an __experimentalAutoInsert field to the 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. file of a dynamic block of your liking. You have to specify the “anchor” block and the relative position (before, after, firstChild, or lastChild) for auto-insertion:
Note that the block will only be auto-inserted as long as the containing template or template part doesn’t have any modifications by the user. (This is by design, in order not to override a user’s choice to discard an auto-inserted block in the editor.)
This feature aims to improve the extensibility of block themes through plugins and continues to be actively developed.
For more details please see the tracking issue and the testing instructions in this PR. It would be great to hear your feedback! (#51449)
New Progress Bar Component
A new, horizontal ProgressBar component that can be used in various places. Whilst this new component has been merged with this release, it has not yet been applied in the Site Editor. It will likely replace the Spinner component that is currently used in the Site Editor loading experience. There is another PR for this work in #53032, aiming to introduce an indeterminate progress bar for the Site Editor, and further experimentation in #53399 to change it to a determinate progress bar. In the meantime, this component can be tested in Storybook. (#53030)
New Commands in the Command Palette
There are three new commands available in the command palette:
Show/hide block breadcrumbs
Enable/disable pre-publish checklist
Preview in a new tab
As well as expanding the functionality available in the new command palette, this effort starts to establish user experience patterns around commands, such as “show/hide” vs. “toggle”, and using snackbar notices more prominently. (#53073)
New Block Supports for Footnotes Block
The Footnotes block now includes support for updating the block’s link color, background color, and text color, as well as controls for typography, dimensions, and borders. The link and text color controls are expanded by default, as they will likely be used more frequently; the other new controls are collapsed by default. (#52897 & #53044)
Minimum Supported PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher Version Bumped to 7.0
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’s minimum PHP version has been bumped from 5.6 to 7.0, to maintain parity with WordPress CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress.. (#52982)
Link Control: Persist advanced settings toggle state to preferences if available. (52799)
Block Library
Behaviors: Extend Global Styles 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 read/write behaviors config. (52370)
Enhancements
Site Editor
Add context to the “Reset template” “Delete template” and “Edit template” commands. (52989)
Add xhuge breakpoint (1920px) and update pattern grid. (52942)
Display keyboard shortcut for command palette in site view. (52841)
Make sure only one Site updated notice displays at a time. (53087)
Template Descriptions: Tidy up all abbreviations of ‘example’ to be e.g. (52848)
Try adding further details to template part panel. (52476)
Update the ConfirmDialog that appears when applying a style revision over unsaved changes. (52972)
Update: Improve titles of author templates in query title block. (52732)
Post Editor
Add common commands (breadcrumbs, live preview, pre-publish checklist). (53073)
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 for:
Site editor: Conditionally render 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. footer 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.. (53204)
Block Editor
Remove duplicated display URLURLA specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org in LinkControl. (53167)
Synced Patterns
Remove extraneous “Detach” ToolbarButton for synced patterns. (53121)
Icons
Add keyboard icon and use in relative commands. (53083)
Plugin
Bump plugin minimum supported PHP version to 7.0. (52982)
Data Layer
Promisify action creator return type for WP data dispatch. (52530)
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.: Fix global border styles generation. (53007)
Check if object exists before accessing its properties. (52870)
Image block: Fix image size at wide and full width. (53184)
Navigation Sidebar: Fetch the blocks from the content when trying to load navigations. (52899)
Navigation: Load the raw property on the navigation fallback. (52758)
Remove block tools back compatback compatBackward compatibility - a desire to ensure that plugins and themes do not break under new releases - is a driving philosophy of WordPress. While it is a commonly accepted software development practice to break compatibility in major releases, WordPress strives to avoid this at all costs. Any backward incompatible change is carefully considered by the entire core development team and announced, with affected plugins often contacted. It should be noted that external libraries, such as jQuery, do have backward incompatible changes between major releases, which is often going to be a greater concern for developers. component schedule for deprecated in 6.3. (53115)
Add id to pattern inserted notice to stop multiple notices stacking. (52746)
Allow orphaned template parts to appear in “general” categoryCategoryThe 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging.. (52961)
Correctly color code unsynced patterns titles in Site Editor. (52958)
Fix auto-size patterns triggering scrollbar flickering on certain size. (52921)
Fix color and behavior of unsynced patterns in block inserter when searching for reusable. (53205)
Fix editor crashing on certain search 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. combinations. (52956)
Fix empty general template parts in Patterns. (52747)
Patterns Browse Screen: Fix back button when switching between categories. (52964)
Reset current page when search filters change. (52933)
Site Editor: Fix site link 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) issues. (52744)
Site Editor: Use the correct icon for Patterns in sidebar card. (52931)
Post Editor
Allow styles to be changed dynamically through editor settings. (52767)
Distraction Free: Fix conflictconflictA conflict occurs when a patch changes code that was modified after the patch was created. These patches are considered stale, and will require a refresh of the changes before it can be applied, or the conflicts will need to be resolved. with showListViewByDefault preference. (52914)
Editor: Set default parameter for ‘__unstableSaveForPreview’. (53079)
Fix toolbar when previewing devices in post editor. (52770)
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.: Add missing Gettext wrapper on strings in Edit Post overview sidebar. (52971)
shimAttributeSource: Don’t run outside the registerBlockType filter. (53015)
Global Styles
Global styles revisions: Display text if no revisions are found. (52865)
Spacing presets: Fix bug with select control adding undefined preset values. (53005)
Style Engine: Switch off optimize by default. (53085)
Distraction Free Keyboard Shortcut: Fix notices in Site Editor. (52867)
Layout
Prevent the Dimensions UIUIUser interface from being displayed when the block does not support Dimensions. (53092)
List View
Ensure onBlockDrop does not fire if there is no target. (52959)
Template Editor
Site Editor: Don’t navigate to the patterns in Template Parts mode. (52884)
Navigation Menus
Navigation: 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. Core changes for the navigation fallback. (52878)
REST API
Global styles revisions: Update private methods to protected. (52748)
Block API
Parser / Site Editor: Ensure autop is not run when freeform block is set to core/htmlHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.. (52716)
Accessibility
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. with Edit site Navigate regions. (52940)
Update to work with consolidated 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) labels. (52896)
Use the correct label to filter Mobile app PRs. (53024)
Patterns: Reinstate template parts mode spec. (52780)
Route to published post instead of homepage on navigation end-to-end tests. (52802)
Temporarily skip 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. import end-to-end test. (53226)
Update end-to-end tests that use code editor. (52788)
Props to @joen and @richtabor for the visual assets; @bernhard-reiter, @tyxla, @priethor, @mburridge, and @matveb for peer review; @bernhard-reiter, @youknowriad, and @dmsnell for helping get the release published to 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/; and @karmatosed and @siobhyb for riding along during the release process.