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 our bug tracker.
@jorgefilipecosta said WordPress 5.9.2 was an important security and maintenance release and asked everyone to update all their sites. There were updates until WordPress 3.7, everyone even if not on the last WordPress major version should be able to update.
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/ 12.8
Gutenberg 12.8 was released around the chat time by @priethor. Details about the release can be backed on the release page.
The current experience when creating a new page and starting with a blank canvas is not ideal. It would be better if we had something premade ready. On #39147 we are interacting on this experience. Patterns will be able to specify they are full page patterns, and uses will be able to create pages in an easy way. We also merged recently changes to how one inserts and replaces the content of a template part and now are changing the flows for the query 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.#38997.
Styles
@jorgefilipecosta said that we have some improvements to how duotone styles are handled in #38681, and we also fixed the centered image alignment styles at #39422.
Comments 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
Quite a bit of progress there, thanks to the team: There’s a fix for the broken pagination that’s now ready to merge. The Generic AvatarAvatarAn avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name. block PR has also been approved. Finally, there’s a bugfix for two rather annoying bugs with inner block selection and duplicated settings in the inspector controls of the Comments Query Loop block.
Native mobile application
@carlosgprim said the team is focused on the following on Drag and Drop project and addressing content uploading issues.
I will start for the next week I want to update #38997 and improve the modal UIUIUser interface to contain a grid and carousel view. I also plan on working on the base editor experience be it by helping the effort to get partial multi block text selection, helping the nested blocks on quotes and lists and other related tasks. Let’s see how much we can improve the basics.
I’m continuing my work on Block Locking UI and 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.. Here’s my latest proposal on implementing “Locked by System” in the editor.
Finished an error handling audit for media blocks. They should correctly display upload errors now 🙂
Created PR to make error messages returned via uploadMedia utility more consistent. This is a breaking change, so I’m looking for some feedback.
Open floor
Template part resizing
@paaljoachim said: “With exploring the transition og going from a classic theme and over to Twenty Twenty Two I noticed that I was not able to adjust the 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. template height.I also made an issue for it here: #39490“.
@jorgefilipecosta anwsred “To me template part is just a block to reference an area. It should not deal with the content its styles its size etc. I guess to control the height of an area like an header one can put a group block or cover block inside that header”.
The conversation continued and @paaljoachim said a group was already present, both participants in the discussion agreed there maybe be space for improvements and the conversation will continue on the issue. If you have some thoughts on this please share them.
I’d like to create a GitHubGitHubGitHub is a website that offers online implementation of git repositories that can 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/ team (under the WordPress org, as a sub-team of the Gutenberg team) for those of us that are currently working on Fronted Developer Experience (tentatively named “Frontend DX”, which means we’d use the handle @wordpress/frontend-dx). There’s currently a rather well-defined group of folks focusing on this, so it’d be quite handy for us to be able to @mention the entire team.
The participants showed support for this idea and @bernhard-reiter is going to create the subteam.
PR’s and Issues awareness
@mauriac raised the attention of the team to PR #39426 that is ready for review and to issue #39395 that is a 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. that happened on 5.9. @jorgefilipecosta said #39395 probably is something that we should fix in WordPress 5.9.3 release.
“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-newtagtagA 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.)) are posted following every Gutenberg release on a biweekly basis, discovering new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg and the Full Site Editing project.
Depending on which hemisphere of the Earth you are at right now, either Spring or Autumn are coming soon. In either case, and regardless of your location, Gutenberg 12.8 is already here for everybody! This release comes with new APIs, iterative UXUXUser experience enhancements, and, as always, many bugfixes to increase the editor’s stability.
New Webfonts 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.
Since 2007, WordPress has provided a framework to help theme and 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 developers load scripts and styles in a standardized, integrated way. Now, for the first time, web fonts have the same types of tooling.
This API is the first step in helping people load fonts in a performance-friendly, privacy-friendly, and future-proof manner – something which has been tremendously difficult to do without such a framework.
That it’s taken so long to reach this point is a testament to how complex web fonts can be and evidence of how much work has gone into ‘getting this right.’ Now that this framework exists, more tools and optimizations can be built on top of it to ensure that WordPress delivers the best possible experience (and privacy) to end-users.
Gutenberg seeks to provide the best editing experience to all kinds of users, and power users will enjoy seeing inline links can now be inserted with a direct keyboard shortcut. If you thought using the slash inserter was fast, try the new [[ keyboard trigger to add an inline link without going through the inserter.
As with other enhancements aiming to improve the user experience, this new feature is gathering feedback; don’t hesitate to share your thoughts on the keyboard trigger and the overall experience.
The Media & Text 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. also comes with improved loading states. Starting in this version, the media being uploaded is also displayed behind the spinner.
Props to new contributors
Kudos to the first-time contributors that joined during the last release cycle!
@joshuafredrickson: Add a resolvable 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/. entry point to base-styles. (39240)
@mashikag: Fix Blocks list ordering in Global Styles. (39093)
@tomasztunik: Fix Global styles overriding block’s element styles. (39012)
@Tumas2: Spelling error in JustifyContentControl example. (39234)
If you are interested in contributing but do not know where to start, join the CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. Editor weekly meetings on Wednesdays at 14:00 UTC in #core-editor focused on all things Gutenberg.
InputControl: Allow onBlur for empty values to commit the change, move reset behaviour to ESCAPE key. (39109)
Block Editor
Add a link completer for inline links to posts. (29172)
Site Editor
Add 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 export file. (39048)
Raise z-index of content div relative to sidebars. (38893)
Media
MediaReplaceFlow: Add ‘onError’ prop to handle error notifications. (39197)
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 settings dropdown: Use block display title in remove label. (39110)
Create Block: Add support for more plugin 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. fields. (39096)
Bug Fixes
Block Library
Buttons: Added aria label to the button block with icon. (38966)
Buttons: Fixes Button highlight popover overflow 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 link popover. (38771)
Buttons: Don’t set a placeholder text color. (39034)
Image: Display errors after failed upload. (39178)
Media & Text: Display errors after failed upload. (39245)
Navigation: Fix 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. error when menus are not yet fetched. (39151)
Post Comments Form: Show correctwarning relative to post/page context. (38011)
Post Expert: Fix missing class in post excerptExcerptAn excerpt is the description of the blog post or page that will by default show on the blog archive page, in search results (SERPs), and on social media. With an SEO plugin, the excerpt may also be in that plugin’s metabox.. (38747)
Post Terms: Unescape HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. entities in term names. (39216)
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. Group: Make save() markup the same as render_callback markup. (38510)
Styles
Fix Blocks list ordering in Global Styles. (39093)
Fix default duotone preset SVG and style generation. (38681)
Improve in_footer handling in gutenberg_override_script(). (39497)
Post Editor
Avoid error when ‘styles’ settings are removed. (39091)
URLURLA specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org: Fix code drift in the Editor package by removing duplicate cleanForSlug function. (39033)
Site Editor
Expose plugin area to site editor’s List page. (39078)
Other Packages
apiFetch: Handle urlencoded and rest_route query params. (38914)
Base Styles: Add a resolvable JavaScript entry point to base-styles. (39240)
Compose: Avoid memory leak in use-drop-zone. (39038)
Render SVG props that have dashes correctly. (38936)
Change copying PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher files to dist directory to opt-in via a CLICLICommand Line Interface. Terminal (Bash) in Mac, Command Prompt in Windows, or WP-CLI for WordPress. flag. (39171)
Create Block: Add confirm prompt before showing the plugin options. (39105)
Fix npm run docs:Build crashing when a block.json lacks supports key. (39241)
Packages: Automate npm publishing as part of Gutenberg release workflow. (39259)
Packages: Automatically acceppt all Lerna commands when run with CI flag. (39199)
Packages: Update CLI publishing tool to run in CI mode. (38993)
Plugin
Account for upcoming changes in styles metadata in WordPress 5.9. (36327)
Don’t 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_templates’ when running WP 5.9. (39017)
Performance Benchmark
The following benchmark compares performance for a particularly sizeable post over the last releases. Such a large post isn’t representative of the average editing experience but is adequate for spotting variations in performance.
Post Editor
Version
Time to first block
KeyPress Event
Gutenberg 12.8
5.01s
38.86ms
Gutenberg 12.7
5.07s
40.42ms
WordPress 5.9
5.22s
38.11ms
Site Editor
Version
Time to first block
KeyPress Event
Gutenberg 12.8
4.99s
33.12ms
Gutenberg 12.7
5.01s
37.61ms
WordPress 5.9
4.74s
32.03ms
Kudos to all 54 contributors that participated in the release! 👏
Shipped useEntityRecord and useEntityRecords convenience 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., recently I also proposed a convenience-oriented set of throwing actions for creating, deleting, and updating entity records
@get_dave – I’ve been working on both refactoring the Nav 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 improving the its UIUIUser interface feedback when importing classic menus and creating empty menus.
Some bugs were found since the last time it was brought up in a meeting, but those are now fixed.
There does remain one quirk, as described in the latest comment, but I don’t think it’s a blockerblockerA bug which is so severe that it blocks a release..
Really wanting to get this one merged in time for 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/ 12.8.
Feedback request: editing Navigation menus in isolation from the Nav block
@get_dave highlighted two interesting PRs happening on the Navigation Menus system to allow menus to be manipulated in isolation from the Navigation block:
“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-newtagtagA 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.)) are posted following every Gutenberg release on a biweekly basis, discovering new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg and the Full Site Editing project.
We are editing a template, either on site editor or post editor.
The inserter is at the root level.
The content being inserted is between other blocks (neither as the first 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. nor as the last one).
The template part (e.g. 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. / Footer / 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.) creation flow will now also show patterns, making it easier to create more advanced compositions than adding blocks one by one.
Work will continue improving the logic that decides to show a pattern or a block, so feel free to share your feedback in the Gutenberg repository!
Allow themes to highlight Patterns
Themes can now highlight specific patterns to their users!
Recommending patterns to the users is as easy as adding a pattern field to the theme.json file. When handling patterns from the Pattern Directory, you can find their slugs on the URLURLA specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org when browsing them individually.
List View Improvements
Once more, the List View keeps getting better! Gutenberg 12.7 includes a few iterative improvements to improve the block editor experience.
Also, when you click on a block in the editor, the List View will expand to show the selected block for better visibility of the selection’s context within the block tree.
Changes to frontend HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. when using layouts and image blocks
In order to add consistency to the block editor, we are removing some wrappers divs that were generated on the editor in order to add alignment to some blocks.
Keep in note that this div cleaning can affect themes that support layout and many blocks that have this alignment support. Many contributors helped with testing, but theme developers are encouraged to check their themes and leave any feedback they may encounter.
Other notable highlights
Gutenberg 12.7 provides a few other iterative enhancements worth highlighting.
To avoid backward compatibility issues reported in WordPress 5.9, the automatic anchor generation for headings introduced in Gutengerg 11.8 is now opt-in. To enable this feature, simply add:
Recognizing and celebrating contributors, both and new, becomes more efficient and effective! A contributor props list has been automated when creating the release and added to the changelog! Any user who merges a PR during a Gutenberg release cycle will be aknowledged.
Group Blocks: Add margin support (top/bottom). (37344)
Comment Template: Improve comment pagination with nested replies. (38187)
Comments 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.: Show placeholder comments on site editor. (38072)
Enable tooltip for the main dashboard button. (38790)
Themes
Lowered specificity of alignment rules for support layout so wide alignments work. (38947)
Remove data-align divs for themes that support layout. (38613)
Remove the div wrapper from the aligned image blocks. (38657)
Patterns
Quick Inserter: Prioritize showing patterns instead of blocks. (38709)
Allow pattern registration from directory with 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.. (38323)
Template Parts: Show existing template parts and a list of block patterns at creation flow. (38814)
Bug Fixes
Block Library
Block Transforms: Fix Image and Video to Cover block transformations. (38959)
Cover: Fix gradient overlay (remove black background color) (38765)
File: Fix PDF file block full content fixture. (38725)
Latest Posts: Add missing class to post title. (38740)
Logo: Avoid division by zero in site logo. (38808)
Post navigation link: Use correct closing tag. (38976)
Query Loop: Display nothing if we want only sticky posts but no stickies exist. (38909)
Template Parts: Decode entities in labels. (38805)
Social Links: Only apply the social links block migrationMigrationMoving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. if there’s a need for a migration. (38561)
Block Editor
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 coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress.: Global styles duotone not rendering in post editor. (38897)
Block Editor: insertDefaultBlock should not trigger an error if the default block is not registered. (38886)
Inserter: Fix focus loss after closing patterns explorer from modal. (38884)
Multi-selection: avoid RichText instances becoming disabled after multi selection. (38821)
Rehabilitate drag gesture in LineHeightControl. (38930)
RichText: Fix wrong block merging when pressing delete consecutively. (38991)
Site Editor
Add site editor initial redirect error handling. (38655)
Core Data: CanUser resolver always use the OPTIONS method. (38901)
Dom: Avoid RangeError in findPrevious method. (38961)
Apps
Fix Custom Palette colors and support multiple origins and theme cache issues. (38417)
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)
Adds aria-label to the search button, as accessibility enhancementenhancementEnhancements are simple improvements to WordPress, such as the addition of a hook, a new feature, or an improvement to an existing feature.. (38136)
Avoid duplicate labels for “Save Draft” and “Save as pending” buttons. (38776)
RichText: Reverse disableLineBreaks to determine aria-multiline state. (38652)
TreeGrid: Add Home/End keys to jump to start/end of grid. (38679)
Performance
CSS & Styling
Use wp_unique_id() instead of uniqid() to generate CSS class names. (38891)
Improve point releaseMinor ReleaseA set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality. documentation to include even more detail. (38631)
Increase support for experimental-link-color until WordPress 5.9 is the minimum version. (38711)
Links changed for Developer.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/ on block editor section. (38841)
Removing comma so that the code snippet of theme.json represents standard JSON. (38938)
theme.json Update version section docs to v2 (38937)
Update Getting Started with more granular options. (38682)
Block Library
Add instructions on how to add new core blocks to block-library. (38868)
PostTrash: Call trashPost action with no arguments, rewrite to 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.. (38615)
npm Packages
Packages: Automate cherry-picking to trunktrunkA directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision. commits created during publishing. (38977)
Packages: Ensure that private packages do not update when publishing to npm. (38946)
Tools
Testing
Add end-to-end test for merging paragraphs and soft line break afterwards. (39009)
Post Visibility end-to-end test: Improve XPath selector to avoid reliance on DOM structure. (38717)
Replace no-shadow eslint rule with @typescript-eslint/no-shadow. (38665)
RichText: Add test for merging and then splitting paragraphs. (39007)
Site Editor Tests: Use 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/. to delete templates and template parts. (38524)
TreeGrid: Add tests for callback functions. (38942)
Generate full release contributors list in release changelog. (38704)
Generate sourcemap for production 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 builds. (33718)
Mobile: Improve npm clean scripts for reactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/.-native-editor. (38752)
Scripts: Do not exit build when no entry found in src directory. (38737)
Scripts: Fix Entry points are not detected in Windows OS. (38781)
Scripts: Copy PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher files from src into build. (38715)
Components
BaseControl: Refactor stories to use Controls. (38741)
Migrate Post Template Delete button from confirm() to ConfirmDialog. (37535)
Migrate the Post ‘Switch to draft’ button to ConfirmDialog component. (37491)
Storybook: Ensure rerender for RTL switcher. (38963)
Post Editor
Edit Post: Migrate store actions to thunks. (36551)
Editor store: Remove a noop SETUP_EDITOR action. (38622)
The following benchmark compares performance for a particularly sizeable post (~36,000 words, ~1,000 blocks) over the last releases. Such a large post isn’t representative of the average editing experience but is adequate for spotting variations in performance.
Post Editor
Version
Time to first block
Keypress event
Gutenberg 12.7
5.0 s
41 ms
Gutenberg 12.6
5.1 s
40 ms
WordPress 5.9
5.2 s
40 ms
Site Editor
Version
Time to first block
Keypress event
Gutenberg 12.7
4.7 s
30 ms
Gutenberg 12.6
5.2 s
29 ms
WordPress 5.9
5.2 s
29 ms
Kudos to all the contributors that helped with the release! 👏
We used to exchange key project updates synchronously during the chat. However, many of the key 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/ projects sustain a regular cadence of updates on their tracking issues on GithubGitHubGitHub is a website that offers online implementation of git repositories that can 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/.
This week we tried async updates. The attendees are encouraged to read the latest updates directly from the following tracking issues at everyone’s leisure:
Group BlockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. – add support for Background Images.
Gathering consensus on add margin support to group block. #37344 PR. After a lot of thoughtful discussion I believe we have agreed this can be merged. Just needs final approval. Thanks again to everyone that participated in this discussion.
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.
The general gist from a themers / my POV: The editor is taking a lot of liberties from us at the moment and makes things harder than they need to be. (And there are a lot of thing breaking by classes suddenly disappearing.)
@tomaz I really like this idea, one thing that I’ve learned in the past is that this requires some strictness as to language/vocabulary and breadth of what can/should be state, and what are the rules behind extending it, how to extend it at coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. level and how to make it available at local/theme level.
The meeting followed a new format with shorter formal updates and more space for open floor discussion. Everyone is encouraged to share their thoughts on this new format as a comment under the proposal post as that discussion will steer future #core-editor meeting agendas.
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 releases
@ntsekouras mentioned these point releases were about fixing small regressions with escaping htmlHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. in blocks.
WordPress
WordPress 5.9.1 has a tentative release date on February 16th, 2022.
We’re looking for release leads for Editor and CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress..
Async key project updates
We used to exchange key project updates synchronously during the chat. However, many of the key Gutenberg projects sustain a regular cadence of updates on their tracking issues on GithubGitHubGitHub is a website that offers online implementation of git repositories that can 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/.
This week we tried async updates. The attendees are encouraged to read the latest updates directly from the following tracking issues at everyone’s leisure:
Proposed the useEntityRecord hook for Gutenberg. It is a part of the larger entity hooks proposal that aims to make working with Guteneberg more approachable and fun (const { record, hasResolved } = useEntityRecord( 'postType', 'page', pageId );). I would appreciate any reviews on useEntityRecord and useQuerySelect.
Shipped the “List of pages” part of the Create your First App with Gutenberg Data tutorial, and now working on the “Edit page” part– your feedback will help a lot!
Currently working on transforming the file 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.so it supports innerblocks. It was initially just a plaintext 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. but I think more is needed.
Hoping to coordinate with @gziolo to improve contributor docs for Gutenberg.
I opened a PR about replacing clipboard-js with calls to the native Clipboard 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..
@robruiz asked if the site editor can be extended,
@mamaduka and @andraganescu suggested the normal slot/fill system for block editors is also present in the site editor and that most slots should be available for extenders.
“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 published following every Gutenberg release on a biweekly basis, discovering new features included in each release. As a reminder, here is an overview of different ways to keep up with Gutenberg and the Full Site Editing project.
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. allows for a lot of customization on behalf of theme authors. Now there is even more that can be done by providing styles variations that let users quickly and easily switch between different looks in the same theme.
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.: custom taxonomies filtering and more!
The Query Loop 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 also shows custom taxonomies in the filters panel. Depending on what post type is selected it will update the available filters to show all the taxonomies for that post type. Moreover, the Query Loop block now also supports filtering by multiple authors.
Previously, there was a limited set of controls available on the 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. Block when rendering a placeholder inside a Query Loop compared to using the block isolated. Starting in this version, all Post Featured Image settings can be used when the block is inside the Query Loop, too!
Preserve styling from adjacent buttons when inserting a new one
Post Featured Image: Show all the controls when inside a Query Loop. (37945)
Buttons: Preserve styling from adjacent button blocks when inserting a new button block. (37905)
Enhancements
Block Library
Add transform between coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress./site-logo and core/site-title blocks. (37920)
Allow using a text label instead of an icon on overlay menu toggle button. (36149)
Add: Hover and Selected states to the palette editor. (37962)
Update gray color palette to match base styles. (38109)
Post Editor
Post Lock Modal: Update 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. size. (38040)
Post Lock: Adjust avatar design and update message. (37979)
Block styles: Remove box-sizing rule on Post Editor container to achieve editor/frontend parity. (37902)
Block Editor
Identify the site frontpage in link UIUIUser interface search results. (36493)
Rich text: Use file on internal dependencies. (38005)
Load the global styles before the theme styles in the editor. (37885)
Duotone: Allow users to specify custom filters. (38055)
Enable alpha on Block Inspector Color ToolsPanel. (37731)
Internationalization
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.: Create new function addLocaleData to merge domain configuration. (37704)
REST APIREST APIThe REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/.
[Global Styles]: Add REST API endpoint to fetch variations. (38124)
Fix Post Date block escaping of date HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.. (38023)
Social Icons: Fix color picker 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. when set to Logos Only. (38006)
Temporarily remove text decoration from Nav block. (37963)
Query Loop: Reorganise inspector controls + order selection bug. (37949)
Override Site Editor URLs to use 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 page. (38232)
Add context to font style and font weight related translationtranslationThe process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. strings. (37939)
Fix: PanelColorSettings renders an empty when a color setting is falsy. (38029)
Data 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.
Load the entities list using the view context. (37685)
Fix inconsistent response when preloading OPTIONS type requests. (38051)
Widgets Editor
Fix empty secondary 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. overlapping widgetWidgetA WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. editor content on mobile viewports. (38017)
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)
Make sure when on last block focus cannot enter the block. (37965)
Tree Grid: Fix keyboard navigation for expand/collapse table rows in Firefox. (37983)
Add documentation for useBlockEditContext hook. (36299)
Add note about “local styles” in the glossary. (38083)
Add some terms related to styles to the glossary. (38076)
Add theme.json v1 reference and v1 to v2 migrationMigrationMoving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. documentation. (37886)
Block API Reference: Fix ‘isSelected’ property type. (38161)
Capitalise the GitHubGitHubGitHub is a website that offers online implementation of git repositories that can 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/ wordmark correctly in the WordPress Gutenberg project. (38092)
Fix documentation 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.. (38235)
Include partialRight import from lodash in DimensionControl example. (38088)
Add a missing @sincetagtagA 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.). (38151)
Ignore local environment .tool-versions configuration file. (38013)
Add allowed-plugins in composer configuration. (38085)
Site editor – try redirecting to homepage before the reactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. render. (37248)
And kudos to all the contributors who have submitted bugs, written code, designed components, added documentation, reviewed others’ contributions, and everything else that goes into making Gutenberg. 👏
The meeting followed a new format with shorter formal updates and more space for open floor discussion. Everyone is encouraged to share their thoughts on this new format as a comment under the proposal post as that discussion will steer future #core-editor meeting agendas.
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 releases
The next minor releaseMinor ReleaseA set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality. is WP 5.9.1 and the next major releasemajor releaseA release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope. is WP 6.0 🛠.
Last week’s update covers 16 commits and 126 tickets from 30 contributors. Kudos to everyone involved!
Async key project updates
We used to exchange key project updates synchronously during the chat. However, many of the key Gutenberg projects sustain a regular cadence of updates on their tracking issues on GithubGitHubGitHub is a website that offers online implementation of git repositories that can 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/.
This week we tried async updates. The attendees are encouraged to read the latest updates directly from the following tracking issues at everyone’s leisure:
Continued wrangling Nav 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. related Issues and tasks into the new Tracking Issue.
Highlighting: There is a PR for allowing pattern registration from the directory with 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.. Needs review though.
@get_dave noted he’d like such a feature, however using a tab key may be tricky 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)-wise.
@get_dave encouraged exploring a solution via a pull request.
@andraganescu highlighted a trac ticket about ways to auto magically detect block themes, and proposed a way forward by requiring the theme to explicitly declare itself as a block theme.
The feedback was favorable, further discussion will happen inside of the ticketticketCreated for both bug reports and feature development on the bug tracker..
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 releases
Navigation 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.
Add more integration tests (reactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/.-native-testing-library based).
Comments 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: Tracking issue.
Collaborated with @joen on some last-minute Pattern preview fixes. It’s not perfect, but it’s definitely an improvement. We will improve UXUXUser experience here in a minor releaseMinor ReleaseA set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality..
Question: What about unregisterBlockType ? Currently there is documentation but it’s not working for widgets screen and FSE editor. Check out the discussion on Slack.
Question: I’m trying to make a start on a new theme using 5.9 and without the Gutenberg plugin. Is there anything I need to do to get changes 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. to load? (e.g. reset a cached version?) Check out the discussion on Slack in this tread.
Question: Here from the Advanced Custom Fields dev team. We’ve been working to bring compatibility with the site editor and it’s 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. but have hit a stumbling block of trying to load assets in. Things like dashicons and jQuery UIUIUser interface elements like date pickers don’t work because they’re only loaded in the global context, and are hard coded to the document or window object. We’ve considering loading them again manually on the late block_editor_settings_all filter, but that feels wrong… Is there a recommended way forward? Check out some of the feedback on Slack.
Improving our PR merge > release process to ensure we’re capturing all the people who should be credited from a merge (e.g., helpful 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. reporters, helpful issue commenters, helpful PR testers). Right now that does not appear to happen with regularity. Check out feedback on Slack.
I would like to bring up is that we as in coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. editor facilitators have been looking at ways in how we can improve the core editor chats. Do please check out the post proposed improvements to the core chat agenda and format.
Yesterday, WordPress 5.9 Joséphine was released with the help of hundreds of contributors and achieving a big milestone for WordPress. It’s now time to start thinking about next steps and the general scope for 6.0. As before, this is meant to be a high level overview of the different areas of focus, not an exhaustive list.
The overall aim is to consolidate and expand the set of customization tools introduced in 5.9 for creating themes with blocks, with a special focus towards usability and refinement. This new release could be considered a conceptual wrap for 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/: Phase 2. This doesn’t mean the customization phase would be concluded with it, but that its main features would have been established.
The introduction of the site editor marked a big milestone but also just a first step in the journey. There are various limitations that need to be lifted and features that didn’t make the cut that need to be revisited. We are also going to be learning a tremendous amount from users now that the initial work is out in the world to be experienced.
Refine the information architecture and template browsing experience. There’s work to be done to better organize the experience of interacting with the site editor, global styles, templates, and navigation as a whole. (36667)
Improve template creation (aiming at never showing disconcerting empty states) and allow the easy creation of more specific templates (i.e: category-$slug). The selection of new templates is artificially constrained right now in the interface. Opening that up should better express the power of the site editor as a web creation tool. (37407)
Expose site structure as “navigation” outside the navigation blockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience.. This is an important aspect to not limit site navigation editing exclusively to the site canvas, which for many reasons can be initially hidden from view. (36667)
Introduce browse mode to be able to conveniently follow links to different parts of the site. Conversely, the template editor that spawns when editing posts or pages also needs to establish better flows with the site editor. There’s a larger theme of connecting pages and templates to be explored. (23328)
Embrace style alternates driven by 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. variations. This was teased in various videos around the new default theme and should be fully unveiled and presented in 6.0. One of the parallel goals is to create a few distinct variations of TT2 made just with styles. (35619)
Improve post settings design and organization. The sidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. has gone without many updates for a while and could use improvements in clarity and design.
Complete the scope of global styles. Introduce easy export & import; support for 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.; etc. (27941)
Remove coupling of templates to specific themes. This is crucial for properly embracing the power of block templates. Switching themes should not cause the disappearance of your modified templates. This is also fundamental for offering more granular combinations instead of complete theme swaps, the ability to add new set of templates (relevant for plugins that introduce new templates), or changing individual parts of a site. (See also.)
Explore more advanced drafting and scheduling for the site editor. Some of this work is meant to happen more in depth during Phase 3, which will include more focus on editorial flows, but there’s still some paving steps to implement. (29575, 29388, 31456)
There should also be some room for some minor back to basics around the coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. writing experience and further improvements to performance and usability. Areas to keep an eye on are the reliability of undo/redo, keyboard interactions, multi-selection, etc.
Patterns
It’s also time to expand the usability of patterns as a main ingredient when it comes to building pages and sites, now that most of the infrastructure has been established.
Prioritize pattern insertion on template building. This is a proposal to make patterns more central to the experience of creating theme templates and pages. (31153)
Simplify registration of patterns for themes. This might take the shape of a patterns folder with file headers that are automatically registered. All in all, it should be super easy for themes to provide a collection of patterns or to specify starter content as patterns. (36751)
Introduce page patterns for page creation. This has been on the horizon for a while and we should have enough building blocks to tackle it properly. It’s also an occasion to improve upon and align with the new “explore” modal that connects with the patterns directory.
Use patterns as possible transforms for offering “layout” options. Inserting new patterns is just a start, but often you want to change existing content or shapes into new ones. Patterns have some of those mechanisms but they need to be better presented and embraced. (27575)
Blocks
Finalize scope of navigation block and its overlay rendering. The navigation block introduced in 5.9 contains a whole world of customization and opportunities that needs to continue to expand and improve. In addition to the block itself, several flows need to be refined around transporting and initializing block menu data.
Introduce various new blocks to power the display of comments on themes. (34994, 38107)
Allow the featured imageFeatured imageA featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts. to be an attribute of other blocks (like Cover, Media & Text, etc) to expand what designs can be achieved.
Allow Quotes and Lists to have child blocks. Some of the current limitations of the writing experience arise from this constraint. (25892)
Improve the Table block. There’s a good design direction to finally implement. (32400)
Explore the viability of inline tokens. This has come up repeatedly in the context of rendering dynamic strings (such as current date) in rich text blocks.
Migrate default block styles into proper style attributes. Continue the work put into global styles by making all systems understand each other.
Pick up the work done for a Table of Contents block.
A lot of progress was made in 5.9 around consolidating the set of design tools and introducing new ones to address major gaps in the experience and providing block authors with simpler ways to register them. For 6.0 there’d be a concerted effort around tightening consistency, introducing more responsive capabilities, and expanding the Supports & Elements 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.. Another important goal is to continue to make it easier for third-party blocks to adopt these tools.
Layout:
Address confusions and shortcomings of layout features (including mindbenders like “inherit layout”). (28356)
Explore more convenient direct manipulation for height and width (alignment distribution) of blocks.
Incorporate more definitive responsive handling (min/max containers) into the current flex-based tools. (34641)
Typography:
Introduce responsive fonts with good defaults. (33543)
Add a Web Fonts API connected with global styles. (37140)
Explore paragraphs with indents and justification with hyphenation as global styles settings.
Elements:
Introduce support for customizing block Captions.
Investigate hover / focus effects and related problems.
Gradual Adoption
Full block themes are at the avant-garde of the WordPress evolution, but work continues to happen to improve how all themes can interact with blocks and make use of the new tools gradually and at their own pace.
Continue to adopt theme.json configuration for non-block themes as it aims to simplify and consolidate support for block properties and their capabilities.
With the “focused template part” editor established there are new opportunities for non-block themes to start incorporating specific areas for blocks using the site editor interface in a more gradual way, when ready to do so. (37943)
Utilize what we have implemented for the navigation block and site structure as the interface to eventually replace the navigation screen.
Explore the flows for creating some dynamic templates with blocks (for example, just the archive), similar to the custom page templates support in classic themes.
Please, help define the work to be done by joining the conversations listed in the issues above or giving feedback!
You must be logged in to post a comment.