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.
Two weeks have passed since the last 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/ release, which means the time is now upon us for Gutenberg version 11.0.0 (released 7th July).
With efforts still concentrated on the WordPress 5.8 release, this version of the Gutenberg Plugin is heavily focused on backports 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.
That being said however, it is not without its highlights! Gutenberg 11.0 introduces:
When the block is not selected, hovering the block results in a blue overlay, whilst clicking anywhere inside the block will act to select the block itself, preventing its children from being selected before the parent.
This mechanic aims to address feedback from users who were surprised at the lack of friction when editing these reusable symbols, which resulted in a frustrating experience.
The new workflow is an improvement that streamlines the experience of working with these powerful blocks.
Support for CSSCSSCascading Style Sheets. shorthand properties 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. and block attributes
Theme JSON is becoming a powerful way of defining reusable CSS rules across Themes. As usage of this feature grows, it’s important to support common ways of setting style properties.
For example, the following is an 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. from an example theme.json file which adds unique padding and border values for the Button block:
Improve insertion point and drag-n-drop in the widgets screen. (32953)
Set Legacy 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. form to display only when not hidden. (33015)
Stretch Widgets editor layout to full height. (32905)
Add ability for Legacy custom HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. widget to transform into custom HTML block. (32862)
Remove the widget switcher block toolbar button for the Legacy Widget. (32733)
Wire handle_legacy_widget_preview_iframe to admin_init_hook. (32854)
Replace “technical” error notice with a user-friendly version. (33165)
Replace legacy widget icon with its new version. (33041)
Block Library:
Media Text block: allow drag and drop media replacement for Media & Text. (29710)
Categories block: Add a label for screen readers. (33060)
Post Template Block: Add post-classes in the 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. for Post Template block. (30497)
Global Styles and Templates:
Allow left/right/center alignments when a layout is defined. (32810)
Allow longhand and shorthand properties in theme.json and block attributes. (31641)
Add filters to get_block_templates functions. (31806)
CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. Data:
Allow making context-specific requests using the data module. (32961)
Make apiFetch requests abortable via AbortController in @wordpress/api-fetch. (32530)
New APIs
Add an 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 define the default template used for the template mode. (32771)
Bug Fixes
Widgets Editor:
Adjust widget form margins in the new Widgets Editor. (33040)
Adjust Legacy Widget form styles to match editor. (32974)
Fix creating and editing non-multi widgets. (32978)
Fix wide widget styles to allow floated contents. (32976)
Fix to allow adding the same image twice in Widgets Editor. (32951)
Align widget 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. button. (32738)
Add width: 100% to components-base-control inside wp-block-legacy-widget. (33141)
Fix error message – bail out if get_current_screen() returns null. (33261)
CustomizerCustomizerTool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings.:
Fix block toolbar deselection when clicking scrollbar. ([32762]
Avoid adding default block to empty widget areas in customizer. (32979) (#32762))
Fix apparent overflow in Customizer caused by widgets editor. (32749)
[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.] Button block: Add deprecation for style.border.radiusnumber. (33117)
Query loop:
Select first Query Loop found from pattern selection. (32737)
Fix race condition for making Post blocks inside uneditable. (33037)
Fix full width children from scrolling horizontally only in the editor. (32892)
Set default block variations not to inherit from global query. (33163)
Group block: Avoid rendering the layout configuration twice. (33045)
Button block:
Use border support provided styles and classes. (33017)
Adding buttons should respect the preferred style. (31089)
Categories block:
Fix broken experience for lower privileged users when fetching Categories . (32994)
Fix crash when trying to access categories on insertion. (32989)
Latest Posts & Latest Comments blocks: Fix to remove the default indent in various editors. (32983)
Archives block: add custom classes to archive dropdown. (32971)
Post terms block: Fix broken experience for lower privileged users when fetching Terms. (32947)
Site Title and Site Tagline blocks: readonly view when the user has no the right permissions. (32817)
Image block:
Fix block validation errors when clearing height/width. (32524)
Fix drag and drop indicator above first block and RTL drop indicators. (33024)
Fix glitchy block focus style when multi selecting blocks. (32927)
Fix collapsing appender when paragraph disabled. (32894)
Fix unintended HTTPHTTPHTTP is an acronym for Hyper Text Transfer Protocol. HTTP is the underlying protocol used by the World Wide Web and this protocol defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. search request in <LinkControl> when showSuggestions is false. (32857)
Ensure only valid URLs or anchors within the text are automatically created as links. (32663)
Fix drag and drop indices when a block list contains a style element. (32776)
Consistent border with focus styles for block appender. (33022)
Set explicit z-index on interface body to ensure it’s pinned under interface 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.. (32732)
Rename .interface-interface-skeleton__bodyz-index to .interface-interface-skeleton__content. (32869)
Template editor:
Fix: Template editor header area is difficult to navigate with screenreaders. (32938)
Do not allow users to create templates with blank titles. (32809)
TemplatePanel: Fixed a problem that when a new template is created, the template is not displayed in the select box. (32744)
Global styles:
Fix a regression where custom-units are forced as an array. (32898)
Update ESnext code in the block toolbar documentation. (32422)
Fix “Gutenberg” typo in dynamic blocks tutorial. (33013)
Polish the Gutenberg release docs, performance audit section. (32770)
Update filterFilterFilters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. in Widget Block Editor documentation. (32759)
Block Editor and Block API:
Add link color supports to Block API documentation. (32936)
Unify Block Editor readme language and example. (31850)
Architecture: Add a schema explaining the relationship between the packages that comprise the post editor. (32921)
ServerSideRender: Update documentation for placeholder props. (33030)
Add ‘area’ key to function doc for gutenberg_get_block_templates. (32746)
Widgets: Add technical implementation details for Widgets Customizer. (33026)
Code Quality
Block Library:
Query Loop: use plain div for wrapper element in patterns. (32867)
Post Template block: remove gutenberg domain from Post Template block. (32804)
Ensure there is no direct import from core/editor store. (32866)
Improve block categories by moving several blocks from Design to Theme. (32568)
Typings:
Begin adding types, starting with redus-store/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./actions. (32855)
Unit control Utils: Update JSJSJavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. documentation and add basic test coverage. (32774)
Promote lint rule to error when validating store string literals. (32537)
Cleanup PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher Codesniffer warnings and enable fail. (26516)
Data: Handle context state updates in core-data reducer on edits. (32991)
APIs: Remove deprecated APIs that are no longer supported in version 11.0. (33258)
Add getCurrentUser() to e2e test utils: , and use it for user switching. (33050)
Fix WP editor metaboxMetaboxA post metabox is a draggable box shown on the post editing screen. Its purpose is to allow the user to select or enter information in addition to the main post content. This information should be related to the post in some way. e2e test. (32915)
Fix failing PHPUnit test caused by changes in WP core. (32888)
Fix eslint-import resolver with extraneous dependencies. (32906)
Scripts: Update lint-md-docs script to use ignore-path. (32633)
Workflows:
Recursively clear node modules when building for ci. (32856)
Allow point releases after a new RC is out. (32560)
Performance
Add in memory cache for rich link previews data. (32741)
Experiments
Navigation Block and Editor:
Update the function name and correct the comment. (32918)
Correct the case of navigation __unstableLocation. (32783
Navigation block: Add an unstable location attribute. (32491)
Avoid double encoding of URLs in Navigation Link block. (32840)
Site Editor:
Fix logic error on site editor useSetting. (32793)
Fix oEmbeds not working in block template parts. (32331)
Performance Benchmark
Due to an ongoing issue with the benchmark tests details on the performance of Gutenberg 11.0 are currently delayed. They will be published here as soon as they become available.
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.
Version
Loading Time
KeyPress Event (typing)
Gutenberg 11.0
4.82s
29.82ms
Gutenberg 10.9
4.69s
29.54ms
WordPress 5.7
5.51s
29.79ms
Kudos to all the contributors that helped with the release! 👏
As it happens, @desrosj reported in and said the release is in great shape:
The milestone only has three 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. tickets remaining that may require changes (excluding release related task tickets and two tickets needing only to be backported). We are in great shape heading into RC3 and final release.
The 5.8 Field Guide is out. Docs lead @milana_cap has done a masterful job of pulling it all together. So if you’re getting a theme or a 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 ready for 5.8, the Guide is your most reliable source of timely, topical information on the changes that will affect your products and the processes you use to get them out the door.
And @audrasjb is back with another Week in Core, celebrating 52 contributors (five who are brand-new!) and nine committers who got things going this week.
@jeffpaul thanked the authors and everyone who commented or otherwise helped share news or knowledge this past week and shared this reminder:
We are now in the RC period. That means we’re in a hard string freeze, and the final planned release candidaterelease candidateOne of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta)., RC 3, is now just FIVE days away, on July 13. The 5.8 release is TWELVE days away, on July 20.
@sergeybiryukov reported in on Build/Test Tools. Referring the community to this ticket on PHPUnit 8.x, he described the challenges that come with adding support for PHPUnit 8.x and 9.x, since they’re not compatible with versions of PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher older than 7.1.
@marybaum commented that Help/About is looking good and then took a minute to thank all the people involved with the About page.
Open Floor
Pivoting from @sergeybiryukov‘s discussion of PHPUnit 8.x and 9.x, @azaozz opened a discussion of when WordPress might stop supporting PHP versions earlier than 7.1. The upshot, according to @sergeybiryukov: WordPress ends support for a PHP version when it’s running fewer than 5% of sites. At the moment, 8.83% of WordPress sites run PHP 5.6, and 5.23% are running on PHP 7.0.
Marketing Rep and Help/About co-maintainer @webcommsat would like to know what your favorite 5.8 feature is, so the Marketing team can write some social-media posts about it. You can share your favorites with her or @marybaum directly or in threads on this week’s marketing meeting, which run asynchronously through Friday.
This is the agenda for the upcoming CSSCSSCascading Style Sheets. meeting scheduled for Thursday July 8 at 21:00PM UTC.
The meeting will be held in the #core-css channel in the Making WordPress SlackSlackSlack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/..
Housekeeping
Discussion: Custom Properties (#49930) Continue discussing the workflow for adding Custom Properties to coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress..
Open Floor + CSS Link Share
If there’s any topic you’d like to discuss, please leave a comment below!
This post summarizes the top pieces of feedback of the current experience to help inform ongoing efforts after the 5.8 release and as a follow up to a similar post from March. You might notice that some areas of feedback match the original post but that the specifics are different. This is to be expected due to efforts being consolidated around 5.8, causing some feedback to fall in priority.
Keep in mind that this post is simply a snapshot in time and is inherently going to leave out aspects of the experience that haven’t been the subject of calls for testing yet, for example, Global Styles. It’s also not going to go into great detail about all of the hard work that has gone into addressing these items already, whether through PRs or sharing designs that offer solutions.
This section pulls together everything from feature requests for additional options for different blocks, desire for more control over spacing especially for the Column and Query loopLoopThe Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop. blocks, general confusion around why certain settings exist in one place and not another (example with the Query loop block, with Color settings, and Columns block), and how to navigate the complexity of settings with more powerful blocks. As a specific example tying in these various items, let’s say you want 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. to display 3 posts from a certain categoryCategoryThe 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. and you want to set various colors for different parts of the set of posts. To accomplish that, you would have to interact with the block sidebarSidebarA sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. settings first to set the category before using the block toolbar to select the number of visible posts. To set various colors, you’d have to use List View or navigate through the nested blocks before opening up the block sidebar settings once more to make sure you’re styling what you want.
Make editing modes distinct (Site, Template, Query Loop block, etc)
Since the calls for testing began to focus on items related to 5.8 in the last couple of months, understanding how best to navigate template editing mode and the Query Loop block became major focuses of feedback. For example, this partially led to the decision to make the Query Loop block’s post content blocks view only. However, while lots of work has been done to provide clarity around what one is editing and adding the right amount of friction, this was still repeated feedback in nearly every test as an area that needs refinement considering how new this functionality is. For example, sharing information in the sidebar upon entering the template editing experience could go a long way in getting a user acquainted with this new experience.
Refine Placeholders & Initial Configuration Steps
With new blocks and new features, the initial placeholders and configuration steps become key to get right in both setting expectations and guiding a person to create what they want. This cuts across many aspects of the full site editing project including template editing mode, the Query Loop block, Navigation block, integrated patterns, and more. For example, if one is adding the Query Loop block with the intent to show a collection of posts, it makes sense to display multiple posts at default rather than just one with the latest implementation. Currently, feedback points to work needing to be done to standardize approaches where it makes sense and to improve each experience overall.
Solidify WYSIWYGWhat You See Is What You GetWhat You See Is What You Get. Most commonly used in relation to editors, where changes made in edit mode reflect exactly as they will translate to the published page. & Desire for previewing content
Ensure reliability and robustness of the the saving process
Because multi-entity saving (saving multiple aspects at once) is a new WordPress concept and one that underpins many interactions in the site editing experience, this is a key area of feedback to address, especially since the act of saving is so crucial to trust. Generally speaking, feedback falls into the following areas: inconsistent behavior, desire for more functionality, and enhancements to make it clearer what is being saved.
Expand abilities of theme blocks
Since many of the tests relied on interacting with the new theme blocks, numerous enhancementenhancementEnhancements are simple improvements to WordPress, such as the addition of a hook, a new feature, or an improvement to an existing feature. requests were raised to improve the experience of using each. Rather than listing this under improving the settings experience, this felt worthy of a separate call out as leveling up these individual theme blocks will unlock more creative power in using these new features. Whether folks wanted more styling options in the Post Title block or to easily add pages in bulk to the Navigation block, people are already looking forward to the next version of these various blocks.
Increase usability of overall experience
This is a “catch-all” category but an important one nonetheless, as it will help various parts of the site editing experience become more intuitive and streamlined. Similar to last time, what follows is a sampling of items both to get a sense of the kinds of issues raised and the spread:
Removing the post content block creates a confusing UXUXUser experience due to the post content block acting as a “container”.
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/ 11.0 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 Release
The latest call for testing is out: FSE Program Testing Call #8: Thrive with Theme.json. As noted in the post, this round of testing targets developer-centric users in order to bring high impact feedback for 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., a new tool for extenders. Feedback is requested by 14 July.
Widgets Editor
See the full 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.-based Widgets Editor dev note for a overview description of the new feature.
The current focus is polishing the theme.json experience by finding and fixing bugs that are back ported to the Betas/RC. Two things left are:
5779 Extract strings provided via theme.json for translationtranslationThe process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. in translate.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/. This depends on a new wp-cliWP-CLIWP-CLI is the Command Line Interface for WordPress, used to do administrative and development tasks in a programmatic way. The project page is http://wp-cli.org/https://make.wordpress.org/cli/ release that includes this PR and then updating the 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. infrastructure.
53494 The global styles need to be enqueued in the footer for classic themes that opt-in into per-block asset loading.
The dev notedev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include:
a description of the change;
the decision that led to this change
a description of how developers are supposed to work with that change.
Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. for theme.json was published.
Task Coordination
@Zeb is looking for review on his TOC Block PR after fixing the infinite-loopLoopThe Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop.bugbugA bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. in the Table of Contents block PR.
Making a little progress on nav block menu item setup states, with a little summary here. Otherwise making PRs for a variety of small issues, in fact some of them just need your green checkmarks!
Mainly doing FSE Outreach Program wrangling in the form of shipping the theme.json call for testing post with two lovely collaborators (join in on the fun!) and a “How to Test FSE items for 5.8” post shipping today. I plan to turn my attention towards user docs starting at the end of this week through to the release to help out there alongside responding to feedback that comes in. I also want to spend more time in the land of 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/ triaging.
In preparation for the next months after 5.8, we are refining the Site Editing scope, closing issues that have been completed for the most part, and creating new overview issues with the upcoming work.
I am a one person mechanical end to end test runner for the block based widgets editor
Open Floor
What’s the status of FSE in 5.8?
@ironwiller Will there going to be a change at WP 5.8 and have an actual FSE or this one is an ongoing project till the end of the year or even beyond?
@mamaduka Template Mode is on for themes that provide theme.json` file or have special support flag.
@annezazu You can think of full site editing as a collection of features that brings the familiar experience of blocks to all parts of your site. Because it’s a collection of features, it means there’s the option to only release what’s stable and ready in a more gradual way rather than all at once! So… think of it less as an “on/off switch” approach for releasing FSE and more as a steady drip of features being released. In terms of what’s coming, check out this post or you can watch this recent video from another community member that goes over the major features planned. While some items related to FSE are going to be released, like Query Loop Block or Template Editing Mode for classic themes that opt in, this work will be ongoing and is expected to continue beyond this year (my best guess).
Embeds in iFrames Issue
@mrMark Bump to have Embeds looked at e.g. this issue. I added a comment on about embeds being cut off because the 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. isn’t expanding for the content.
Replace white screen on home page
@colorful-tones Is there a means to refrain from seeing white screen on home page if a theme just has a theme.json in it? I’ve tested with TwentySomething themes and does not seem to happen, therefore wondering if there is a deprecation jig in place for TwentySomething themes only to gracefully fail. Query Monitor shows wp-content/plugins/gutenberg/lib/template-canvas.php being loaded as template on home page. This is with WP 5.8 RC1-51270 and Gutenberg 10.9.1 active. It looks like an issue needs to be created for this topic for general review.
RC 1 released last week and RC 2 yesterday, now under hard string freeze
Working on Field GuideField guideThe field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page. email to 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/theme authors
No further 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. scrubs scheduled, so please highlight issues of concern directly in #core
RC 3 in 6 days on Tuesday, July 13th
5.8 release in 13 days on Tuesday, July 20th
Components check-in and status updates
5.8 plans and help needed
Check-in with each component for status updates.
Poll for components that need assistance.
Open Floor
Do you have something to propose for the agenda, or a specific item relevant to the usual agenda items above?
Please leave a comment, and say whether or not you’ll be in the chat, so the group can either give you the floor or bring up your topic for you accordingly.
This meeting happens in the #core channel. To join the meeting, you’ll need an account on the Making WordPress Slack.
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 June 28 and July 5, 2021.
64 commits
52 contributors
65 tickets created
16 tickets reopened
67 tickets closed
Please note that the WordPress Core team released WordPress 5.8 RC 1 last week. Everyone is welcome to help testing 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. of WordPress 🌟
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.
Code changes
Build/Test Tools
Add the 5.8 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". to the workflow for testing branches
Add the artifacts directory to svn-ignore and .gitignore – #53549
Replace assertInternalType() usage in unit tests – #53491, #46149
Split packages and blocks to their webpack configs – #53397
Bundled Themes
Correct @since tags for 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. patterns – #52628, #53461
Twenty Seventeen: Avoid JSJSJavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. errors when displaying legacy widgets – #53512
Twenty Twenty-One: Add missing documentation for some filters – #52628, #53461
Twenty Twenty-One: Ensure Duotone images are displayed correctly in Dark Mode – #53531
Twenty Twenty-One: Ensure the dropdown arrow displays for <select> elements when focused – #53560
Twenty Twenty-One: Improve documentation per the documentation standards: – #52628, #53461
Twenty Twenty: Add missing documentation for some filters – #52628, #53461
Coding Standards
Add missing visibility keywords to WP_Theme, WP_Theme_JSON, and WP_Theme_JSON_Resolver tests – #52627
Apply an alignment fix after composer format – #53375
Remove redundant type casting to array in WP_Query::get_posts() – #53359
Documentation
Add @since tags for WP_Theme class properties – #53399
Add @ticket references to some WP_Theme_JSON tests – #52628, #53461
Add and correct examples of common names for various dynamic 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. – #53581
Add missing @since tags for some 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/. methods added in 5.8 – #52628, #53461
Add missing @since tags for some WP_Theme_JSON methods
Adjust wp_dashboard_browser_nag()DocBlockdocblock(phpdoc, xref, inline docs) per the documentation standards – #52628, #53461
Correct @see references for hooks in the get_option() description – #52628, #53461
Correct @since annotation for WP_Block_Type->view_script – #53397
Correct description for the $image parameter of the wp_save_image_filefilterFilterFilters 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. – #53399
Correct description for the upgrader_pre_install filter – #53546
Correct documentation for rest_{$post_type}_query and rest_{$taxonomy}_query filters – #53568
Corrections and improvements to types used in docblocks for symbols, properties, and filters – #53399
Descriptive improvements and corrections for various docblocks – #53399
Document common names for dynamic hooks relating to metadata – #53581
Document the globals used in WP_REST_Widget_Types_Controller and WP_REST_Widgets_Controller – #52628, #53461
Document the globals used in some REST API methods – #53399
Fix the documentation for the $tests parameter of the site_status_tests filter – #53399, #46573
Further Improve documentation for wp_should_load_separate_core_block_assets() – #53505
Further type corrections and improvements for various docblocks – #53399
Improve documentation for wp_should_load_separate_core_block_assets() – #53505
Improve documentation for optional parameters in WP_Theme_JSON_Resolver methods per the documentation standards – #52628, #53461
Improve documentation for optional parameters in WP_Theme_JSON methods per the documentation standards – #52628, #53461
List the expected type first instead of WP_Error in some REST API methods added in 5.8 – #52628, #53461
Update documentation for WP_Widget_Block per the documentation standards – #52628, #53461
Update syntax for multi-line comments per the documentation standards – #52628, #53461
Update the IRCIRCInternet Relay Chat, a network where users can have conversations online. IRC channels are used widely by open source projects, and by WordPress. The primary WordPress channels are #wordpress and #wordpress-dev, on irc.freenode.net. link from Freenode to Libera.chat – #53590
Editor
Ensure global styles are loaded in the footer when loading core assets individually – #53494
Ensure the Query block pattern categoryCategoryThe 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. is translatable – #53577
Prevent block stylesheets from loading when they do not exist – #53375
Remove the experimental experimental-link-color feature – #53175
Include the latest fixes targetted for 5.8 RC1 – #53397
Package updates including fixes from 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/ for WordPress 5.8 RC1 – #53397
Remove unnecessary function_exists check in get_the_block_template_html – #53578, #53176
Check each post-type’s capabilities when querying multiple post-types – #48556
REST API
Allow multiple widgets to be deleted in a single batch request – #53557
Script Loader
Add file block assets to the svn-ignore list – #53397
Fix PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher notice caused by the viewScript for the core/file block – #53397
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. based 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.
Navigation Block & Navigation Editor.
Full Site Editing.
Mobile Team.
Task Coordination.
Open Floor.
If you are not able to attend the meeting, you are encouraged to share anything relevant for the discussion:
If you have anything to share for the Task Coordination section, please leave it as a comment on this post.
If you have anything to propose for the agenda or other specific items related to those listed above, please leave a comment below.
Whether you are a WordPress website user, builder, or developer, WordPress 5.8 brings exciting changes and a hint of even more goodies coming in WordPress 5.9. But we’re getting ahead of ourselves; let us take a look at what to expect in when 5.8 is released.
In this Field GuideField guideThe field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page., you will notice what is relevant to you and your users among the many improvements coming in 5.8.
BlockBlockBlock is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. Editor
The block editor moves onward with regular releases. 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/ version 10.7 is bundled with WordPress 5.8; that totals eight Gutenberg releases (versions 10.0, 10.1, 10.2, 10.3, 10.4, 10.5, 10.6, and 10.7) all merged into this WordPress release (as the related Gutenberg handbook page makes clear)! Bug fixes and performance improvements from Gutenberg versions 10.8 and 10.9 are also part of 5.8.
As well, those recommendations integrate with the Pattern Directory on 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/, template editor, theme.json, and blocks in widgetWidgetA WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. areas among other changes.
In the block editor-related dev notesdev noteEach important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include:
a description of the change;
the decision that led to this change
a description of how developers are supposed to work with that change.
Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. below are important details on how theme.json delivers editor style control and associated Global Settings and Global Styles, plus:
Blocks in widget areas
block.json as canonical way to register block styles
deprecation of filters and introduction of context-aware replacements
Removal of previously deprecated EditorGlobalKeyboardShortcuts component, hasUploadPermissions selector, and hidden Subheading block
The iframed template editor portion of Full Site Editing
Block-styles loading enhancements
Media
Amongst all Media changes, the highlight is support for the WebP image format. Accompanied by new image_editor_output_formatfilterFilterFilters 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. (see #52867), it will set foundation for a real performance boost. You will also notice some UIUIUser interface improvements, such as replacing infinite scroll with AJAX response (#50105 and #40330) and copy-link button on media upload screen (#51754).
Plugins
Changes in the Plugins component aim to make 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 lives easier. From better docs search (#50734) and standardizing 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. terminology (#50531) to ability to mark plugins as unmanaged (#32101) and avoid overwriting plugin files caused by update conflicts.
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/.
REST API changes are mainly focused on Widgets and sidebars but there is also a new operator for 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. queries within post collections, support for the eagerly awaited AND comparison, which allows posts meeting all passed criteria are matched (#41287).
Site Health
Amongst the UI fixes, Site Health changes bring new actions for extending the navigation in the Site Health screen (#47225). You will also find new info provided by Site Health via a list of the supported file types for the active image editor (#53022).
Themes
Across the Themes changes you will find two new action hooks, delete_theme and deleted_theme (#16401), a few UI improvements such as clearly showing if a theme is a child themeChild themeA Child Theme is a customized theme based upon a Parent Theme. It’s considered best practice to create a child theme if you want to modify the CSS of your theme. https://developer.wordpress.org/themes/advanced-topics/child-themes/. (#30240), update counter in adminadmin(and super admin) menu item (#43697), and removal of “Featured” tab in Add Themes screen (#49487).
Also, older bundled themes are refreshed with some really nice block patterns for your pleasure and inspiration.
Other Developer Updates
There are even more goodies in 5.8! Read through the dev notes below to see details on how Internet Explorer 11 support is being dropped as well as assorted changes to the Bootstrap/Load, Build/Test Tools, Formatting, General, Media, Posts/Post Types, 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., Themes, and Users components.
Alongside the dev notes below, also worth noting is that work has continued during the 5.8 release cycle to increase the compatibility with PHP8 and its new features. Please continue to test your code against PHP8 as we all work towards raising the entire WordPress ecosystem compatibility with PHP8, thank you!
Build/Test Tools: Remove @babel/polyfill in favor of core-js/stable, requires explicit addition of regenerator-runtime as script dependency if IE11 support is still required (#52941).
Comments: comments_pagination_base missing in get_comment_reply_link() function (#51189).
Comments: Comments list’s link should point to an actual article (#52353).
Embeds: Process embeds for block widgets (#51566).
Emoji: Bump Twemoji from 13.0.1 to 13.1.0 (#52852).
External Libraries: Bump jQuery from 3.5.1 to 3.6.0 (#52707).
External Libraries: Bump Moment.js from 2.27.0 to 2.29.1 (#52853).
External Libraries: Bump Requests from 1.7.0 to 1.8.1 (#53101 and #53334).
External Libraries: Bump Underscore from 1.8.3 to 1.13.1 (#45785).
Media: Remove infinite scrolling behavior from the Media grid (#50105).
Media: Add a copy-link button at the media upload page (#51754).
Menus: Add ability to delete multiple menu items (#21603).
Revisions: a new dynamic filter to specify post type for number of revisions to save, wp_{$post->post_type}_revisions_to_keep (#51550).
Role/Capability: user_can() changed for exist capability for anonymous users (#52076).
Upgrade/Install: Remove parsing of readme.txt files from validate_plugin_requirements() (#48520).
Upgrade/Install: Fatal error during update to 5.8 of a site with an active Gutenberg plugin (version less than 10.7) (#53432).
Widgets: Make sure WP_Widget constructor creates a correct classname value for a namespaced widget class (#44098).
And much, much more!
Please, test your code. Fixing issues that your code has with WordPress coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. helps you and millions of WordPress sites.