A Week in Core – February 12, 2024

Welcome back to a new issue of Week in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Let’s take a look at what changed on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between February 5 and February 12, 2024.

  • 71 commits
  • 245 contributors
  • 82 tickets created
  • 11 tickets reopened
  • 82 tickets closed

Ticketticket Created 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

Administration

  • Improve contrast and consistency of focus styles – #51870

Bundled Themes

  • Twenty Fifteen: Add top margin to the File blockBlock Block 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. button styles – #58498
  • Twenty Nineteen: Add border-radius to avatarAvatar An 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. images in the editor – #59285
  • Twenty Nineteen: Correct line height for Button block – #58443
  • Twenty Nineteen: Restore transition property to a single line – #58443
  • Twenty Sixteen: Add border-radius to avatar images in the editor – #59253
  • Twenty Twenty-Four: Add missing translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. functions to text strings – #60298
  • Twenty Twenty-Four: Prefix the block pattern categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. name – #59839
  • Twenty Twenty-Three: Include Latin-extended characters in DM Sans font files – #59008
  • Twenty Twenty-Two: Prefix the pages block pattern category name – #59839
  • Twenty Twenty: Fix Table block default and custom border colors – #58022
  • Twenty Twenty: Scope .privacy-policy styles to the footer only – #60469
  • Improve focus outline in Twenty Twenty-Four – #60334
  • Cast font URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org functions to string for add_editor_style()#59704

Build/Test Tools

  • Fix bugbug A 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. pulling local environment containers on Apple silicone – #59930
  • Generate a human-readable HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. coverage report – #60476
  • Make the props bot message shorter – #60417
  • Pin a specific commit for Hosting Test Reporter – #59647
  • Revert [57551]#59647
  • Unpin PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher 7.4 from the test coverage workflow – #59647
  • Adjust the metaMeta Meta 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. key time in wp_scheduled_delete() tests – #59938

Canonical

  • Introduce admin_canonical_url filterFilter Filters 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.#59545

Coding Standards

  • Add missing fullstop to docblocks in wp-includes/vars.php#41877
  • Replace alias join() in WP_Font_Utils#60473

Editor

  • Add viewScriptModule handling to block.json metadata – #60233
  • Add wakeup magic method to the block bindings registry – #60282
  • Avoid double escaping on value passed for attribute in HTML tagtag A 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.) processor
  • Expand Block Bindings for button block – #60481
  • Fix block style variation selector generation – #60453
  • Fix typo in FontUtils doc block – #59166
  • Improve code documentation for block bindings – #60282
  • Introduce WP_Block_Bindings_Source class – #60447
  • Make asset file optional for block scripts – #57234
  • Refactor block binding processing and attribute computation – #60282
  • Register the Google Font collection – #59166
  • Show the patterns page for classic themes – #58827
  • Update PHPDocPHPDoc (docblock, inline docs) for block bindings’s context arg – #59743
  • Update pattern overrides attribute format – #60456
  • Update the WordPress packages to GutenbergGutenberg The 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/ 17.7RC1 – #60315
  • Block HooksHooks In 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.: Inject hooked blocks into modified templates and parts – #59646
  • Blocks: Allow reading the script handle from asset files – #60485
  • Interactivity APIAPI An 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.: Integrate Server Directive Processing – #60356
  • Interactivity API: Remove empty file – #60356

Filesystem API

  • Fix typo in ftp_base::restore()#60497

General

  • Add an option to configure the site icon in general settings – #54370, #16434
  • Remove ableist language from code comments – #60247

HTML API

  • Add subclassed has_bookmark() and fix seek() – #60474
  • Join text nodes on invalidinvalid A resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid.-tag-name boundaries – #60385

I18Ni18n Internationalization, or the act of writing and preparing code to be fully translatable into other languages. Also see localization. Often written with a lowercase i so it is not confused with a lowercase L or the numeral 1. Often an acquired skill.

  • Add Translator comments for Planet URLs – #58010

Media

  • Update progress spinner position on small screens – #33049
  • enable control of progressive image output – #21668

Networks and Sites

  • Improve switch_to_blog() docblockdocblock (phpdoc, xref, inline docs)#60332

Permalinks

  • Detect Caddy web server support – #41877

Plugins

  • Store pluginPlugin A 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 deletion results in temporary option – #59433

Quick/Bulk Edit

  • Pre-fill category fields with their status – #11302

REST APIREST API The 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/.

  • Add featured_media field to attachments endpoint – #41692
  • Improve error handling in REST meta fields – #48823
  • Introduce the necessary endpoints for the font library – #59166
  • Provide detailed error data in REST API response – #60014

Script Loader

  • Add a timezone offset display value to wp.date.setSettings – #60105
  • Improve translators comments for wp.date.setSettings in compat file – #60412
  • always output core block global styles after base global styles – #60280
  • Add deregister module function – #60463

Shortcodes

  • Always return an array in shortcode_parse_atts()#59249

Themes

  • Add ‘theme_files’ cache group to block pattern cache operations – #60120
  • update add_theme_support docblock – #60221

Toolbar

  • Add adminbar link for new sites in networknetwork (versus site, blog) installs – #41104

Upgrade/Install

  • Avoid update_option() calls during bootstrap – #60461, #60457, #60491
  • Upgrade/Install: Introduce Plugin Dependencies – #22316
  • Micro-optimizations for getting plugin_file in plugins loader loopLoop The 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.#60510
  • Remove unnecessary individual subfiles from $_old_files array – #58995

Users

  • Replace table tags for color palettes in profiles – #53157

Props

Thanks to the 245 (!!) people who contributed to WordPress Core on Trac: @gziolo (14), @mukesh27 (13), @swissspidy (13), @sabernhardt (13), @poena (12), @shailu25 (11), @huzaifaalmesbah (9), @youknowriad (8), @oglekler (7), @joedolson (7), @jorbin (7), @audrasjb (7), @spacedmonkey (6), @SergeyBiryukov (6), @dmsnell (6), @get_dave (6), @hellofromTonya (5), @afercia (5), @kebbet (5), @harshgajipara (5), @johnbillion (5), @costdev (4), @nicolefurlan (4), @jonsurrell (4), @czapla (4), @TimothyBlynJacobs (3), @karmatosed (3), @pbiron (3), @desrosj (3), @afragen (3), @azaozz (3), @luisherranz (3), @dingo_d (2), @mikeschroder (2), @andraganescu (2), @johnjamesjacoby (2), @rajinsharwar (2), @nidhidhandhukiya (2), @cbravobernal (2), @dd32 (2), @wildworks (2), @pooja1210 (2), @wasiur195 (2), @scribu (2), @ajmcfadyen (2), @peterwilsoncc (2), @pitamdey (2), @santosguillamot (2), @isabel_brison (2), @bernhard-reiter (2), @mcsf (2), @ocean90 (2), @aaronrobertshaw (2), @sadpencil (1), @cfinnberg (1), @viliamkopecky (1), @ecc (1), @rcorrales (1), @cvorko (1), @flixos90 (1), @joemcgill (1), @adamsilverstein (1), @_ck_ (1), @markoheijnen (1), @Japh (1), @pmeenan (1), @derekspringer (1), @buley (1), @ericlewis (1), @bahia0019 (1), @born2webdesign (1), @kushang78 (1), @timothyblynjacobs (1), @wonderboymusic (1), @dlh (1), @obenland (1), @jameskoster (1), @kjellr (1), @stacimc (1), @h71 (1), @krupajnanda (1), @jordesign (1), @monzuralam (1), @hrrarya (1), @fnpen (1), @mhshohel (1), @bedas (1), @jeremyfelt (1), @prionkor (1), @matveb (1), @benniledl (1), @jsnajdr (1), @mnydigital (1), @onemaggie (1), @luminuu (1), @pouicpouic (1), @ugyensupport (1), @jivygraphics (1), @sumitbagthariya16 (1), @kkmuffme (1), @talldanwp (1), @dartiss (1), @upadalavipul (1), @manfcarlo (1), @mayur8991 (1), @panchalhimani711 (1), @itpathsolutions (1), @thakordarshil (1), @Ankit-K-Gupta (1), @darshitrajyaguru97 (1), @pavelevap (1), @chasedsiedu (1), @helen (1), @joshcanhelp (1), @ubernaut (1), @Cyberchicken (1), @laumindproductscomau (1), @Marcoevich (1), @tomybyte (1), @thinkluke (1), @virtality-marketing-solutions (1), @Michalooki (1), @itecrs (1), @pannelars (1), @WHSajid (1), @samba45 (1), @Mte90 (1), @tomluckies (1), @soulseekah (1), @francina (1), @webcommsat (1), @balub (1), @sarathar (1), @glendaviesnz (1), @up1512001 (1), @zodiac1978 (1), @davidbinda (1), @westonruter (1), @retrofox (1), @joefusco (1), @colorfultones (1), @acosmin (1), @alh0319 (1), @beafialho (1), @javiercasares (1), @mmaattiiaass (1), @grantmkin (1), @oandregal (1), @ajlende (1), @ahoereth (1), @alanfuller (1), @alexkingorg (1), @amykamala (1), @anonymized_10690803 (1), @apeatling (1), @ashfame (1), @atimmer (1), @aristath (1), @batmoo (1), @beaulebens (1), @blobaugh (1), @bobbingwide (1), @boonebgorges (1), @brianhenryie (1), @chanthaboune (1), @chrisdavidmiles (1), @coolmann (1), @courane01 (1), @danielbachhuber (1), @davidperez (1), @Denis-de-Bernardy (1), @DJPaul (1), @dougal (1), @DrewAPicture (1), @ethitter (1), @filosofo (1), @georgestephanis (1), @giuseppemazzapica-1 (1), @goldenapples (1), @griffinjt (1), @husobj (1), @ideag (1), @jarednova (1), @jbobich (1), @jbrinley (1), @jltallon (1), @johnciacia (1), @joppuyo (1), @jsmoriss (1), @knutsp (1), @kraftbj (1), @kraftner (1), @kurtpayne (1), @lkraav (1), @logikal16 (1), @man4toman (1), @markjaquith (1), @matt (1), @mbijon (1), @megphillips91 (1), @mikeschinkel (1), @mordauk (1), @morehawes (1), @mrwweb (1), @mte90 (1), @mzaweb (1), @nacin (1), @norcross (1), @nvwd (1), @nwjames (1), @obliviousharmony (1), @paaljoachim (1), @pauldewouters (1), @pbaylies (1), @Philipp15b (1), @pogidude (1), @retlehs (1), @rmccue (1), @ryan (1), @sabreuse (1), @sc0ttkclark (1), @sereedmedia (1), @ShaneF (1), @shidouhikari (1), @soean (1), @stephenh1988 (1), @taylorde (1), @tazotodua (1), @threadi (1), @TJNowell (1), @tollmanz (1), @toscho (1), @tropicalista (1), @Viper007Bond (1), @westi (1), @whiteshadow (1), @williamsba1 (1), @wpsmith (1), @ZaneMatthew (1), @noisysocks (1), @kevin940726 (1), and @fabiankaegy (1).

Congrats and welcome to our 28 (!!) new contributors of the week: @sadpencil, @cfinnberg, @viliamkopecky, @ecc, @cvorko, @pmeenan, @derekspringer, @born2webdesign, @kushang78, @hrrarya, @fnpen, @mhshohel, @benniledl, @mnydigital, @up1512001, @alh0319, @anonymized_10690803, @blobaugh, @chrisdavidmiles, @giuseppemazzapica-1, @jltallon, @johnciacia, @logikal16, @pbaylies, @Philipp15b, @pogidude, @tropicalista, @whiteshadow ♥️

Core committers: @gziolo (11), @youknowriad (10), @sergeybiryukov (8), @audrasjb (7), @joedolson (7), @swissspidy (5), @desrosj (5), @spacedmonkey (3), @jorbin (3), @costdev (3), @hellofromtonya (2), @dmsnell (2), @isabel_brison (2), @adamsilverstein (1), @davidbaumwald (1), and @bernhard-reiter (1).

#6-5, #core, #week-in-core

A Year in Core – 2023

Happy new year, everyone! Here’s some aggregate data for 2023 about WordPress CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. contribution on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress..

Please note:

  • These data only include code contributions to WordPress codebase, not contributions on GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ repositories such as GutenbergGutenberg The 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/.
  • The raw data for this post are available on this public spreadsheet. You might find that much easier to read if you have low vision or colorblindness; the graphics below are a snapshot pulled together to include as much information as possible in this blogpost, but they are hard to make accessible to everyone.
  • You can also compare these stats with last year’s data and data from 2021.
  • All the links for the graphics below open a new tab to display them in full size.

General Trac overview

In 2023, the WordPress Core team shipped 2211 commits (2597 in 2022). 2751 tickets were opened, 2545 tickets were closed, and 365 were reopened.

Also, 1079 people contributed to WordPress source code using Trac (988 in 2022), and 472 people made their very first contribution to WordPress Core ♥️ (398 in 2022).

JanuaryFebruaryMarchAprilMayJuneJulyAugustSeptemberOctoberNovemberDecemberTotal
Commits14826517984174246209173250288108872211
Tickets closed1812972181561792592112772392681481122545
Tickets reopened253636192540422935402810365
Tickets created1852342081882082552563102502702121752751
New contributors18912318257451317546128472
Contributors13729515587150279217182295249111931079
This chart shows the number of commits per month in 2023, and the number of closed, reopened and created tickets per month. It also shows the number of contributors per month in 2023. It can be scrolled horizontally.

Check out the Trac timeline in the graphs below:

2023 Core Trac tickets by month (opens in a new tab)
2023 Core commits by month (opens in a new tab)

Here’s how many props and new contributors the Core project had per month. The most prolific months were February and September with 295 contributors each, followed by June and October. 42 of the new contributors received their first props on a commit related to the Twenty Twenty-Four theme.

2023 WordPress Core contributors by month (opens in a new tab)

Components activity

How did 2023’s commits break out by Core Component?

The most prolific components were:

  • Editor with 284 commits (12.8% of all listed commits)
  • Build/Test Tools with 265 commits (12% of all listed commits)
  • Docs with 188 commits (8.5% of all listed commits)
  • Coding Standards with 154 commits (7% of all listed commits)
  • Bundled Themes with 130 commits (5.9% of all listed commits)
  • Then came MediaHelp/About, Code Modernization (which is not an official component), Themes, Administration, General, HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. APIAPI An 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., Internationalization, REST APIREST API The 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/. and Upgrade/Install. The other components each had fewer than 30 commits this year.

Contributors data retrieved from WordPress.orgWordPress.org The 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/ profiles

The data below comes from matching contributors’ usernames, as mentioned in Trac props, with their profiles on WordPress.org.

One caveat: this ignores usernames that did not match a profile on dotorg, plus any that had blank or unusable country/company information (“The Universe” or “Unicorn land” are not known countries 🙂).

Contributions by country

The next graph shows the number of props received by country. The top eight countries, based on the number of props received, are these:

  • United States with 2062 contributions (1255 in 2022)
  • Russia with 795 contributions (1152 in 2022)
  • India with 683 contributions (317 in 2022)
  • France with 680 contributions (739 in 2022)
  • Australia with 611 contributions (386 in 2022)
  • United Kingdom with 471 contributions (216 in 2022)
  • Ireland with 403 contributions
  • Bangladesh with 340 contributions (145 in 2022)
Contributions by country (opens in a new tab)

Contributors (people) by country

In 2023, people from at least 62 countries contributed to WordPress Core (57 countries in 2022).

Here are the top eight countries by number of contributors:

  • United States with 164 people (152 in 2022)
  • Bangladesh with 105 people (only 43 in 2022)
  • India with 93 people (77 in 2022)
  • United Kingdom with 31 people (38 in 2022)
  • France with 30 people (22 in 2022)
  • Canada with 25 people (17 in 2022)
  • Germany with 21 people (25 in 2022)
  • Netherlands with 21 people (23 in 2022)
  • Spain with 19 people (12 in 2022)
Contributors by country (opens in a new tab)

Contributions by company

In 2023, people from at least 286 companies contributed to WP Core.

These companies (well, their employees) each contributed to more than 100 commits:

  • Automattic with 1770 contributions (866 in 2022)
  • Yoast with 985 contributions (1452 in 2022)
  • 10up with 904 contributions (501 in 2022)
  • Whodunit with 561 contributions (676 in 2022)
  • Google with 404 contributions (130 in 2022)
  • Bluehost with 238 contributions (226 in 2022)
  • XWP with 224 contributions (14 in 2022)
  • Human Made with 177 contributions (126 in 2022)
  • Advies en zo with 143 contributions (220 in 2022)
  • Dream Encode with 128 contributions (124 in 2022)
  • Emilia Capital with 123 contributions
  • Accessible WD with 120 contributions (53 in 2022)
  • GoDaddy with 111 contributions (42 in 2022)
Contributions by company (opens in a new tab)

Contributors (people) by company

A huge number of companies have only one contributor—or very few contributors. The exceptions are Automattic, with 108 core contributorsCore Contributors Core contributors are those who have worked on a release of WordPress, by creating the functions or finding and patching bugs. These contributions are done through Trac. https://core.trac.wordpress.org. on Trac in 2023, WPDeveloper (39 contributors), 10up with 25 contributors, AuthLab (21 contributors), rtCamp (17 contributors), Awsm (12 contributors), Human Made (12 contributors), Multidots (12 contributors), and Yoast (10 contributors). Only these 9 companies had at least 10 people credited on Trac in 2023.

Contributors by company (opens in a new tab)

What did 2022 hold for Core Committers?

39 Core Committers committed code to the WordPress SVNSVN Subversion, the popular version control system (VCS) by the Apache project, used by WordPress to manage changes to its codebase. repository this year (32 in 2022):

@sergeybiryukov (552), @audrasjb (413), @desrosj (148), @hellofromtonya (134), @joedolson (93), @isabel_brison (88), @spacedmonkey (88), @flixos90 (87), @peterwilsoncc (82), @davidbaumwald (77), @bernhard-reiter (67), @jorbin (44), @johnbillion (43), @joemcgill (39), @swissspidy (30), @azaozz (27), @costdev (25), @westonruter (25), @karmatosed (24), @gziolo (22), @oandregal (15), @ryelle (15), @adamsilverstein (9), @danielbachhuber (9), @jorgefilipecosta (8), @zieladam (7), @kadamwhite (6), @youknowriad (6), @antpb (4), @drewapicture (4), @mikeschroder (4), @afercia (3), @timothyblynjacobs (3), @clorith (2), @dd32 (2), @helen (2), @ocean90 (2), @johnjamesjacoby (1), and @whyisjake (1).

Of the 2211 commits, 555 (25%) were made by people working at Yoast, 413 (19%) from people working at Whodunit, 399 (18%) from employees of Automattic, followed by Google (151 commits), Bluehost (148 commits) and 10up (123 commits).

Core Committers by company (opens in a new tab)

Automattic is the only company with more than 10 active Core Committers, and 12 of them committed code in 2023. Google has 4 people allowed to commit code to WordPress, followed by 10up with 3 Core Committers.

Worth noting that 15 of the 39 active committers come from the US, which represents 38% of the Core Committers squad. Australia, Canada, Italy, Poland and United Kingdom each had 2 committers.

More than 30% of the commits were handled by committers located in the United States, 26% by committers located in Russia, and 19% by committers located in France.

Core Committers by country (opens in a new tab)

Sponsorship

In 2023, 21.6% of the contributors and 23.1% of the committers indicated that a company sponsors their contributions.

Sponsorship of contributors in 2023 (pie chart opens in a new tab)
Sponsorship of committers in 2023 (pie chart opens in a new tab)

Many thanks to @audrasjb for help collecting the 2023 data and for adding several graphics.

#contributions, #contributors, #team-update, #week-in-core, #year-in-core

Four Weeks in Core – October 9, 2023

Welcome back to a new issue of Week in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Let’s take a look at what changed on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between September 4 and October 9, 2023.

Please note that exceptionally and because of personal vacations, this Week in Core issue covers 4 weeks 😊

  • 269 commits
  • 337 contributors
  • 295 tickets created
  • 43 tickets reopened
  • 277 tickets closed

Ticketticket Created 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.

Continue reading

#6-4, #core, #week-in-core

A Week in Core – June 12, 2023

Welcome back to a new issue of Week in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Let’s take a look at what changed on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between June 5 and June 12, 2023.

  • 30 commits
  • 48 contributors
  • 67 tickets created
  • 3 tickets reopened
  • 44 tickets closed

Ticketticket Created 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

Administration

  • Improve alignment in the Activity dashboard widgetWidget A 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.#58114

Bootstrap/Load

  • Revert [55890]#57928
  • Avoid loading a theme’s functions.php when ! wp_using_themes()#57928

Bundled Themes

  • Twenty Twenty-Three: Remove redundant px unit in a few inline styles – #58485

Coding Standards

  • Use strict comparison in wp-admin/options-writing.php#57839
  • Use strict comparison in wp-includes/class-walker-category.php#57839
  • Use strict comparison in wp-includes/class-walker-page-dropdown.php#57839
  • Use strict comparison in wp-includes/class-walker-page.php#57839
  • Use strict comparison in wp-includes/class-wp-http-streams.php#57839
  • Use strict comparison in wp-includes/class-wp-list-util.php#57839

Docs

  • Fix a few more typos in Docblocks – #58338, #57840
  • Improve various docblockdocblock (phpdoc, xref, inline docs) in WP_Query class, as per docblock standards – #57840
  • Mark apply_filters() third parameter $args as optional – #58481, #57840
  • Various docblock improvements in Custom HeaderHeader The 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. Image related functions, as per docblocks standards – #57840

Editor

  • Improve the append_to_selector method – #58231
  • Skip file_exist check for core blocks – #58385

Embeds

  • Add support for TikTok creator profiles – #55784

External Libraries

  • Update jQuery Migrate to version 3.4.1 – #58451

I18Ni18n Internationalization, 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.

  • Provide gettext context to disambiguate various translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. strings – #58424

Login and Registration

  • Grammar improvement on Sign-up user-facing strings – #58115

Media

  • Fix CSSCSS Cascading Style Sheets. layout issues in Replace media dialog – #54395

Networks and Sites

  • Require a site title when a site is created – #54012

Plugins

  • Display Auto-updates filters when the current view is “Must Use” or “Drop-in” – #54309

Query

  • Allow queries by wp_dashboard_recent_posts() to be cached – #57055

Script Loader

  • Add a check to see in style is registered in wp_maybe_inline_styles – #58394
  • Improve performance of wp_maybe_inline_styles function – #58394

Themes

  • Replace file_exists checks with call to is_block_theme method in WP_Theme class – #58405

Upgrade/Install

  • Improve WP_Upgrader strings rendering on small screens – #58477

Users

  • Use type="hidden" for hidden input on User edit administration panel – #56776

XML-RPC

  • Update RSD specification URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org in XMLRPC library – #58503

Props

Thanks to the 48 people who contributed to WordPress Core on Trac last week: @sergeybiryukov (8), @spacedmonkey (6), @afercia (6), @aristath (6), @poena (6), @audrasjb (5), @mukesh27 (5), @costdev (5), @flixos90 (3), @joemcgill (3), @kebbet (2), @sabernhardt (2), @ankitmaru (2), @sumitsingh (2), @hareesh-pillai (2), @NekoJonez (2), @ryokuhi (1), @pooja1210 (1), @chiragrathod103 (1), @dhrumilk (1), @nazmulhudadev (1), @hellofromtonya (1), @peterwilsoncc (1), @danielbachhuber (1), @nihar007 (1), @juzar (1), @bpayton (1), @pavanpatil1 (1), @siddhantwadhwani (1), @ashikurwp (1), @tushar284 (1), @Ankit K Gupta (1), @smit08 (1), @gilles66 (1), @gaeldenysiak (1), @ideag (1), @benjgrolleau (1), @alvitazwar052 (1), @anveshika (1), @mgol (1), @sstoqnov (1), @utsav72640 (1), @pbiron (1), @mamaduka (1), @oandregal (1), @wildworks (1), @dd32 (1), and @gonzomir (1).

Congrats and welcome to our 7 new contributors of the week: @nazmulhudadev, @juzar, @siddhantwadhwani, @ashikurwp, @gilles66, @gaeldenysiak, @anveshika ♥️

Core committers: @audrasjb (11), @sergeybiryukov (8), @spacedmonkey (5), @danielbachhuber (2), @swissspidy (1), @joedolson (1), @ocean90 (1), and @jorbin (1).

#6-3, #core, #week-in-core

In-Browser WordPress Tech Demos: WordPress Development with WordPress Playground

WordPress Playground was recently used at a hackathon to prototype three different ways of building WordPress plugins with very little setup and directly in the browser:

  • WP-CLIWP-CLI WP-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/ and PHPUnit in the browser
  • WordPress as a VS Code extension
  • Mobile pluginPlugin A 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 editor

WP-CLI and PHPUnit in the browser

The first demo brings popular WordPress terminal tools and a code editor into the browser:

A significant challenge was executing shell commands in the browser. Although various browser-based Linux implementations were explored, none fully addressed the issue or were feasible within the limited time frame. Consequently, basic commands like ls, cd, and cat were manually implemented, along with the exposure of wp-cli and phpunit.

By the end, many wp-cli commands were running, phpunit tests were functional (although not all passed), and the code editor updated live WordPress files – all while working offline.

This project, built by @swissspidy and Florian Blaser, is currently being incubated in WordPress Playground Pull Request #161.

WordPress dev server as a Visual Studio Code extension

The second demo is a WordPress development server that you can start without ever installing MySQLMySQL MySQL is a relational database management system. A database is a structured collection of data where content, configuration and other options are stored. https://www.mysql.com/., PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher, or an ApacheApache Apache is the most widely used web server software. Developed and maintained by Apache Software Foundation. Apache is an Open Source software available for free. web server. It works as a Visual Studio Code extension:

The primary challenge was understanding the concept of running PHP inside JavaScriptJavaScript JavaScript 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/., which differs from typical PHP or Node.js development. This VS Code extension provides a single-click development environment, potentially benefiting WordCamps, Learn.wp.org courses, and various workshops.

This project was built by @danielbachhuber, Adrian Stobbe, Mohannad Rahmani, and @ebinnion and lives in a working GitHub repository created by Daniel. Eventually, it may be moved into the WordPress Playground repository.

While this extension is highly experimental, it is publicly available in Visual Studio Marketplace for everyone to try. The code lives in a GitHub repository and is intended for migrationMigration Moving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. to the official WordPress Playground monorepo. If you have experience with VS code extensions and would like to help develop them, your help is most welcome!

Mobile editor

In the third demo, @gziolo and @zieladam explored a full WordPress IDEIDE Integrated Development Environment. A software package that provides a full suite of functionality to software developers/programmers. Normally an IDE includes a source code editor, code-build tools and debugging functionality. in the browser. In the video you can see a GutenbergGutenberg The 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/ blockBlock Block 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. developed entirely in Stackblitz. It’s worth noting that Sandpack + WebContainers emerged as a suitable open-source alternative:

This setup allows for building WordPress blocks in the browser, on mobile devices, and even offline. Most npm packages are also supported. It’s believed that this could empower a vast number of new internet users to create within the WordPress ecosystem, even without a desktop device.

The Stackblitz example is publicly available here.

Call for contributions

All of these projects are open for future contributions, and you are encouraged to get involved. Feel free to share your thoughts in the comments, on GithubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/, or join the #meta-playground WordPress.org slackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. channel.

Props to the following editors and co-creators of this post: @cbringmann, @annezazu

#playground

A Week in Core – February 20, 2023

Welcome back to a new issue of Week in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Let’s take a look at what changed on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between February 13 and February 20, 2023.

  • 58 commits
  • 88 contributors
  • 74 tickets created
  • 10 tickets reopened
  • 69 tickets closed

Ticketticket Created 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

Administration

  • Close adminadmin (and super admin) menu when focus moves to body – #53587
  • Fix JavaScriptJavaScript JavaScript 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/. test failure – #53587

Bootstrap/Load

  • Check that either mysqli_connect() or mysql_connect() is available – #51988

Build/Test Tools

  • Fix inaccurate coverage in Tests_Functions_wpListPluck::set_up() – #56706
  • Fix invalidinvalid A resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid. styles data type PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher Warning in REST_Block_Type_Controller_Test::test_get_item_invalid() – #57706
  • Improve devcontainer setup for non-Codespaces usage – #57187
  • Add missing @covers tagtag A 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.) for a wp_update_comment() test – #56793
  • Declare the $post_id property in wp_comments_personal_data_exporter() tests – #56793
  • Merge file-level and class-level DocBlocks in various unit testunit test Code written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression. files – #57099
  • Move PasswordHash test file to a more appropriate place – #56340
  • Move wp_comments_personal_data_eraser() tests to their own file – #56793
  • Move wp_comments_personal_data_exporter() tests to their own file – #56793
  • Rename the html tests directory to html-api#56793

Bundled themes

  • Fix row variation nested in group blockBlock Block 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.#56226
  • Recommit generated files following [55329]#56226
  • Twenty Twelve: Properly reflect text color changes in Table block – #56466
  • Twenty Twenty: Properly reflect text color changes in Quote and Pullquote block – #55990

Coding Standards

  • Improve variables names in post and comment page link functions – #57746
  • Rename $post_ID variable to $post_id in various files – #57692
  • Rename the remaining $cat_ID variables to $cat_id#56754
  • Replace strval() with (string) type casting in wp_nav_menu()#57169

Comments

  • Use correct orderby parameter name in personal data exporter and eraser – #57700

Date/Time

  • Revert mysql2date changes in [55343]#57705
  • Save a call to wp_timezone in mysql2date – #57705

Docs

  • Add www. prefix to some PHP manual links in code comments – #56792
  • Add a @since note about Twenty Twenty-Three for WP_Theme::$default_themes#57714
  • Improve code comments in some sanitizing functions – #57712
  • Replace HTTPHTTP HTTP 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. with HTTPSHTTPS HTTPS is an acronym for Hyper Text Transfer Protocol Secure. HTTPS is the secure version of HTTP, the protocol over which data is sent between your browser and the website that you are connected to. The 'S' at the end of HTTPS stands for 'Secure'. It means all communications between your browser and the website are encrypted. This is especially helpful for protecting sensitive data like banking information. in PHP Manual links located in WP_Privacy_Policy_Content class – #56792, #57017
  • Replace HTTP with HTTPS in PHP Manual links located in wp-load.php#56792
  • Update the wording for the Update Services link on Writing Settings screen – #48987
  • Use correct 6.2.0 since version in multiple docblocks – #56792
  • Use third-person singular verbs for WP_Meta_Query related function descriptions, as per docblocks standards – #56792
  • Various improvements in XML-RPC Class function descriptions, as per docblocks standards – #56792

Editor

  • Fix ‘wp-block-library-theme’ style enqueue conditions – #57561
  • Prevent KSES stripping global layout style properties – #57321
  • Remove missing postType and postId query args Site Editor redirect – #57716
  • Restores file block button styles for classic themes – #57688
  • Update wordpress packages for 6.2 BetaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. 2 – #57471

External Libraries

  • Prevent a PHP 8.1 deprecation notice in PasswordHash::gensalt_blowfish()#56340

Feeds

  • Fix various typos in MagpieRSS – #57102

Filesystem APIAPI An 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.

  • Use trailingslashit( $path ) instead of $path . '/'#57516

Formatting

  • Add aspect-ratio as valid CSSCSS Cascading Style Sheets. property in KSES – #57664

I18Ni18n Internationalization, or the act of writing and preparing code to be fully translatable into other languages. Also see localization. Often written with a lowercase i so it is not confused with a lowercase L or the numeral 1. Often an acquired skill.

  • Add new strings to about.php for use with end-of-life updates – #57216
  • Check that $wp_locale global is set before calling its methods – #56698

Login and Registration

  • prevent registering with username that matches previous user email – #57394

Media

  • Enhance logic to determine LCP image in block themes and avoid lazy-loading it – #56930

Menus

  • Test creating parent after a child doesn’t throw an error – #57122

Permalinks

  • Properly escape strings in Permalinks Settings screen – #57143

REST APIREST API The 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/.

  • Normalize WP_REST_Server::dispatch() to return a response object – #56566
  • Only use Latin characters in test filenames – #57329, #57761
  • Remove ‘Invalid user ID’ error in WP_REST_Users_Controller::update_item() – #56662

Themes

  • Remove local() from @font-face styles in _wp_theme_json_webfonts_handler() – #57430
  • Use add_action for pre_get_posts hook in _add_template_loader_filters()#57097

Upgrade/Install

  • Update available theme updates count when a theme si deleted – #57183

Users

  • Correct the error code in wp_insert_user() when login matches an existing email – #57394

Props

Thanks to the 88 (!) people who contributed to WordPress Core on Trac last week: @costdev (12), @sergeybiryukov (9), @mukesh27 (7), @robinwpdeveloper (6), @hellofromTonya (6), @audrasjb (5), @mamaduka (4), @poena (4), @ntsekouras (4), @sabernhardt (4), @peterwilsoncc (3), @tanjimtc71 (3), @desrosj (3), @jrf (3), @ironprogrammer (2), @riccardodicurti (2), @nithins53 (2), @antonvlasenko (2), @kapilpaul (2), @scruffian (2), @spacedmonkey (2), @hellofromtonya (2), @codemonksuvro (1), @petitphp (1), @swissspidy (1), @anantajitjg (1), @kebbet (1), @ace100 (1), @youknowriad (1), @jamilbd07 (1), @andrewserong (1), @wojtekn (1), @hztyfoon (1), @arafatjamil01 (1), @mmtr86 (1), @jaedm97 (1), @mikachan (1), @shraboni (1), @kmadhak (1), @hanshenrik (1), @faguni22 (1), @nidhidhandhukiya (1), @wetah (1), @ehtmlu (1), @aristath (1), @luehrsen (1), @rafinkhan (1), @sapayth (1), @james-roberts (1), @devtanbir (1), @kajalgohel (1), @abirhasandipu (1), @manfcarlo (1), @reduanmasud (1), @shahidul95 (1), @adamsilverstein (1), @flixos90 (1), @wildworks (1), @smeunus (1), @thelovekesh (1), @dhusakovic (1), @ryokuhi (1), @kaneva (1), @joedolson (1), @kraftbj (1), @dalirajab (1), @shamimmiashuhagh (1), @ajayver (1), @roytanck (1), @dunhakdis (1), @buutqn (1), @rahmantasnia (1), @nazmulhasan103 (1), @felipeelia (1), @DaveFX (1), @mahekkalola (1), @azaozz (1), @sc0ttkclark (1), @ipajen (1), @dimadin (1), @bgin (1), @sannevndrmeulen (1), @ndiego (1), @jffng (1), @glendaviesnz (1), @afragen (1), @samruddhikhandale (1), and @ajlende (1).

Congrats and welcome to our 14 new contributors of the week: @tanjimtc71, @codemonksuvro, @ace100, @jamilbd07, @arafatjamil01, @dalirajab, @shamimmiashuhagh, @ajayver, @dunhakdis, @buutqn, @rahmantasnia, @nazmulhasan103, @mahekkalola, @bgin.

Core committers: @sergeybiryukov (19), @audrasjb (15), @hellofromtonya (8), @peterwilsoncc (5), @joedolson (2), @gziolo (1), @danielbachhuber (1), @timothyblynjacobs (1), @adamsilverstein (1), @azaozz (1), @helen (1), @spacedmonkey (1), @davidbaumwald (1), and @flixos90 (1).

#6-2, #core, #meta6545, #week-in-core

A Week in Core – February 13, 2023

Welcome back to a new issue of Week in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Let’s take a look at what changed on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between February 6 and February 13, 2023.

  • 103 commits
  • 165 contributors
  • 71 tickets created
  • 13 tickets reopened
  • 99 tickets closed

Ticketticket Created 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

Administration

  • Close adminadmin (and super admin) menu when focus moves to body – #53587
  • Define the $title global on privacy screens – #57578
  • Fix JavaScriptJavaScript JavaScript 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/. test failure – #53587
  • Match title tagtag A 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.) to menu item for Editor – #57654

Application Passwords

  • Allow plain HTTPHTTP HTTP 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. success and reject URLs when using a local environment type – #52617

Build/Test Tools

  • Add a devcontainer for Codespaces support – #57187
  • Add unit tests for wp_set_password hook – #57436
  • Cleanup change to package.jsonJSON JSON, 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.
  • Update json2php package – #57535
  • Update npm dependencies for bundled themes – #57535
  • Add missing @covers tag for a wp_update_comment() test – #56793
  • Declare the $post_id property in wp_comments_personal_data_exporter() tests – #56793
  • Move PasswordHash test file to a more appropriate place – #56340
  • Move wp_comments_personal_data_eraser() tests to their own file – #56793
  • Move wp_comments_personal_data_exporter() tests to their own file – #56793
  • Rename the html tests directory to html-api#56793
  • Use assertSameSets() in WP_Query tests for search_columns argument – #43867

Bundled Themes

  • Twenty Fifteen: Bundle Google Fonts locally – #55985
  • Twenty Fourteen: Bundle Google Fonts locally – #55985
  • Twenty Seventeen: Bundle Google Fonts locally – #55985
  • Twenty Sixteen: Bundle Google Fonts locally – #55985
  • Twenty Thirteen: Bundle Google Fonts locally – #55985
  • Twenty Twelve: Bundle Google Fonts locally – #55985
  • Twenty Twelve: Properly reflect text color changes in Table blockBlock Block 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.#56466
  • Twenty Twenty: Properly reflect text color changes in Quote and Pullquote block – #55990
  • Fix row variation nested in group block – #56226
  • Recommit generated files following [55329]#56226

Coding Standards

  • Add missing escaping function in Custom_Image_Header::show_header_selector()#57638
  • Pass correct value to get_delete_post_link() in attachment_submit_meta_box()#57690
  • Rename $comment_ID variable to $comment_id in various files – #57671, #56791
  • Rename the remaining $cat_ID variables to $cat_id#56754

Comments

  • Allow to pass $comment_ID parameter to comment_time()#52322
  • Allow to pass $comment_ID parameter to get_comment_time()#52322
  • Improve rel attribute usage in comments – #53290, #56444
  • Use correct orderby parameter name in personal data exporter and eraser – #57700

Docs

  • Add a @since note about Twenty Twenty-Three for WP_Theme::$default_themes#57714
  • Correct @since tag for WP_Locale_Switcher::$stack#57123
  • Document possible return values for wp_get_word_count_type()#56698
  • Miscellaneous improvements and corrections to docblocks – #56792
  • Replace short array syntax in WP_HTML_Tag_Processor documentation – #57691
  • Use third-person singular verbs for WP_Meta_Query related function descriptions, as per docblocks standards – #56792
  • Various improvements in XML-RPC Class function descriptions, as per docblocks standards – #56792

Editor

  • Updated the WordPress packages to include GutenbergGutenberg The 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/ 15.1.0 changes – #57471
  • Updates the WordPress packages with all the fixes targetted for WP 6.2 beta1 – #57471
  • Add frontend block-level settings to the core – #57651
  • Add layout controls to children of flex layout blocks – #57584
  • Introduce sticky position block support – #57618
  • Remove “betaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process.” label from Site Editor submenu item – #57654
  • Restores file block button styles for classic themes – #57688
  • Support the block_types and viewport_width props for remote patterns fetched from Pattern Directory – #57611
  • Update wordpress packages for 6.2 Beta 2 – #57471
  • Use WP_HTML_Tag_Processor in wp_render_elements_support()#57642
  • svn add new files missed in [55285]#57618
  • Backportbackport A 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. site editor intialization changes from Gutenberg 15.1 – #57480

Embeds

  • Update YouTube provider for live URLs – #57632
  • Use documented mixcloud.com oembed endpoint – #57376

Emoji

  • Fix emoji feature detection – #57301

External Libraries

  • Prevent a PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher 8.1 deprecation notice in PasswordHash::gensalt_blowfish()#56340
  • Update element-closest#52851
  • Update jQuery Migrate to version 3.4.0 – #56743
  • Update miscellaneous libraries to their latest versions – #57646

Feeds

  • Fix various typos in MagpieRSS – #57102

Filesystem APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.

  • Add test for uncovered WP_Error in move_dir()#57375

Formatting

  • Add aspect-ratio as valid CSSCSS Cascading Style Sheets. property in KSES – #57664
  • Guard wp_strip_all_tags() against fatal errors – #56434
  • Treat math elements as block-level elements – #13340

General

  • Check that set_time_limit() function is available before using it in core – #55711

Help/About

  • Add info about the “View” row action link to the Users screen help tab – #57666

I18Ni18n Internationalization, 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.

  • Introduce word_count_type property to WP_Locale#56698
  • Mark screen reader strings as such with translator comments – #29748
  • Prevent fatal error in WP_Textdomain_Registry#57218

Login and Registration

  • Set correct default values in wp_signon()#56850

Mail

  • Check that set_time_limit() function is available before using it in class-pop3.php#57659

Media

  • Add test file missed in [55278]#57370
  • Bail early if image is already the requested size – #57370
  • Enable selective optout for video and audio shortcodes – #40144
  • Enhance logic to determine LCP image in block themes and avoid lazy-loading it – #56930
  • Fix focus loss updating custom fields in media modal – #40909
  • Introduce wp_get_attachment_link_attributes filterFilter Filters 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.#41574
  • Maintain the functionnality of the deprecated WP_Media_List_Table::column_desc() method – #39710
  • Remove unwanted quotation marks for playlist template – #50865
  • Use strict comparison in make_subsize()#57370

Menus

  • Test creating parent after a child doesn’t throw an error – #57122

Options, MetaMeta Meta 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. APIs

  • Add a filter to allow the shortcut return to wp_load_alloptions function – #56045

Permalinks

  • Properly escape strings in Permalinks Settings screen – #57143

Privacy

  • Add rel="privacy-policy" to the Privacy Policy link – #56345

Query

  • Add a search_columns argument to control which fields are searched in a search query – #43867

Quick/Bulk Edit

  • Remove the bulk_edit_posts action for now – #28112

REST APIREST API The 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/.

  • Remove ‘Invalidinvalid A resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid. user ID’ error in WP_REST_Users_Controller::update_item() – #56662
  • Support non-Latin characters in template route regex – #57329

RevisionsRevisions The WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision.

  • Add a way to filter the revisions considered for deletion – #57320

TaxonomyTaxonomy A 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.

  • Implement wp_cache_get_multiple in wp_queue_posts_for_term_meta_lazyload#57150

Themes

  • Add caching to WP_Theme::is_block_theme()#57114
  • Remove local() from @font-face styles in _wp_theme_json_webfonts_handler() – #57430
  • Revert appearance tools theme support – #57649
  • Use add_action for pre_get_posts hook in _add_template_loader_filters()#57097

Toolbar

  • Prevent false positive on automated contrast testing – #56789

Upgrade/Install

  • Skip preloading Requests for WordPress versions before 4.6 – #57662

Users

  • Add support for RoboHash GravatarGravatar Is an acronym for Globally Recognized Avatar. It is the avatar system managed by WordPress.com, and used within the WordPress software. https://gravatar.com/. images in default user profile pics – #57493
  • Change parameters order in send_auth_cookies filter – #56971
  • Pass correct number of arguments to send_auth_cookies filter in wp_clear_auth_cookie()#56971
  • Pass the authentication scheme to the send_auth_cookies filter – #56971
  • Update get_avatar_url() and get_avatar() to include RoboHash support – #57493

Props

Thanks to the 165 (!!) people who contributed to WordPress Core on Trac last week: @costdev (33), @mukesh27 (22), @audrasjb (21), @sergeybiryukov (19), @desrosj (14), @sabernhardt (12), @poena (11), @hellofromTonya (10), @ocean90 (9), @aristath (8), @davidbaumwald (8), @peterwilsoncc (8), @flixos90 (8), @ntsekouras (8), @robinwpdeveloper (8), @paapst (7), @azaozz (7), @webcommsat (7), @JeffPaul (7), @jffng (6), @jhoffmann (6), @cbirdsong (6), @kau-boy (6), @MatthiasReinholz (6), @luminuu (6), @westonruter (6), @bedas (6), @jrf (6), @spacedmonkey (5), @garrett-eclipse (5), @mamaduka (5), @joedolson (5), @hellofromtonya (5), @kjellr (5), @adamsilverstein (4), @kebbet (4), @johnbillion (4), @ironprogrammer (3), @petitphp (3), @rudlinkon (2), @andrewserong (2), @Mamaduka (2), @antpb (2), @afragen (2), @afercia (2), @krunal265 (2), @nithins53 (2), @dmsnell (2), @swissspidy (2), @ryokuhi (2), @joemcgill (2), @antonvlasenko (2), @james-roberts (2), @jorgefilipecosta (1), @birgire (1), @gziolo (1), @hareesh-pillai (1), @jipmoors (1), @Chouby (1), @abidhasan112 (1), @pavelevap (1), @mercime (1), @dd32 (1), @chocofc1 (1), @Presskopp (1), @jeherve (1), @matclayton (1), @slieschke (1), @sergiomdgomes (1), @chintan1896 (1), @juliobox (1), @a4jpcom (1), @stalukder03 (1), @adeltahri (1), @arrasel403 (1), @10upsimon (1), @hvar (1), @aaroncampbell (1), @joyously (1), @jokerrs (1), @theode (1), @adamziel (1), @jhned (1), @kawserz (1), @faisal03 (1), @bookwyrm (1), @bhavz-10 (1), @dshanske (1), @NathanAtmoz (1), @oandregal (1), @ipajen (1), @obayedmamur (1), @bgoewert (1), @SteelWagstaff (1), @hughie.molloy (1), @ericlewis (1), @conner_bw (1), @hakre (1), @wojtek.szkutnik (1), @nicholaswilson (1), @pbearne (1), @galbaras (1), @danielbachhuber (1), @manfcarlo (1), @re_enter_rupok (1), @ajlende (1), @hanshenrik (1), @faguni22 (1), @nidhidhandhukiya (1), @wetah (1), @ehtmlu (1), @luehrsen (1), @rafinkhan (1), @sapayth (1), @devtanbir (1), @kmadhak (1), @kajalgohel (1), @reduanmasud (1), @samruddhikhandale (1), @shahidul95 (1), @scruffian (1), @wildworks (1), @kapilpaul (1), @smeunus (1), @thelovekesh (1), @dhusakovic (1), @kaneva (1), @abirhasandipu (1), @shraboni (1), @jaedm97 (1), @riccardodicurti (1), @anantajitjg (1), @mujuonly (1), @dinhtungdu (1), @wojtekn (1), @thomasplevy (1), @pedromendonca (1), @matveb (1), @priethor (1), @isabel_brison (1), @viralsampat (1), @cadic (1), @wppunk (1), @h4l9k (1), @d-signed (1), @travisaxton (1), @jorbin (1), @samiamnot (1), @benish74 (1), @mburridge (1), @helen (1), @antonyagrios (1), @afrin29 (1), @syhc (1), @teebee (1), @lucymtc (1), @bueltge (1), @lkraav (1), @TobiasBg (1), @lenasterg (1), @grl570810 (1), @wirecat (1), @sam1el (1), @craiglpeters (1), and @mahbubshovan (1).

Congrats and welcome to our 32 (!!) new contributors of the week: @jokerrs, @kawserz, @bookwyrm, @hughiemolloy, @nicholaswilson, @re_enter_rupok, @hanshenrik, @faguni22, @ehtmlu, @rafinkhan, @sapayth, @reduanmasud, @samruddhikhandale, @shahidul95, @smeunus, @abirhasandipu, @jaedm97, @riccardodicurti, @wojtekn, @h4l9k, @d-signed, @travisaxton, @samiamnot, @benish74, @antonyagrios, @afrin29, @syhc, @teebee, @grl570810, @wirecat, @sam1el, @craiglpeters ♥️

Core committers: @audrasjb (29), @sergeybiryukov (24), @peterwilsoncc (7), @davidbaumwald (6), @joedolson (6), @flixos90 (6), @hellofromtonya (5), @danielbachhuber (4), @desrosj (4), @youknowriad (3), @johnbillion (2), @jorbin (2), @spacedmonkey (2), @helen (1), @swissspidy (1), and @jorgefilipecosta (1).

#6-2, #core, #meta6545, #week-in-core

Core Editor chat summary: 25th January 2023

This post summarises the weekly editor chat meeting (agenda here) held on 2023-01-25 14:00 UTC in Slack. Moderated by @get_dave.

Status Updates

  • Version 15.0.0 of the GutenbergGutenberg The 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/ PluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party is the latest major version and version 15.0.1 was also released to resolve some iframeiframe iFrame 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. issues.
  • Please note than the RCrelease candidate One 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). of Gutenberg 15.1.0 will be delayed to align better with the upcoming WordPress 6.2 beta (to be released on 7th of February).
  • project board for WordPress 6.2 Editor tasks is available.

Updates based on updated scope for site editing projects

Task Coordination

The following items were shared by folks to update us on what work is in progress or where help is needed:

@mamaduka:

  • primarily working on PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher backports for WP coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress..
  • We’ve got a nice tracking issue if anyone is interested. Please check the issue description if your username is mentioned, and let us know if you can help with backports. Tracking issue: 

@get_dave:

@paaljoachim – gave a lot of feedback to the current call for FSE testing

@ndiego – working on Editor Triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. for 6.2. If you see an issue/PR that you feel needs attention for the 6.2 release. Please feel free to add it to the 6.2 Project Board. We will triage from there.

Open Floor

The full Open Floor discussion is available on SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/..

A new contributor joins us – welcome Alex

Ongoing value of these chats/meetings

  • @paaljoachim asked if/how we can improve the value of the Core Editor meetings.
  • @get_dave suggested including more of a triage session and wondered whether that would interfere with @ndiego‘s efforts.
  • @poena highlighted meeting time of day as a key blockerblocker A bug which is so severe that it blocks a release..
  • @ndiego noted that the triage sessions are also suffering from low attendance. He agreed that we should consider ways to improve the value of the chat.
  • @danielbachhuber suggested a better form of async meeting/scrubbing.
  • @danielbachhuber also highlighted the problem that it’s hard to get product decisions and feedback if you are not:
    • on a team working full time on Gutenberg.
    • working on something directly related to the roadmap

Thanks to everyone who attended the chat.

#core-editor, #core-editor-summary, #meeting-notes, #summary

A Week in Core – January 16, 2022

Welcome back to a new issue of Week in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Let’s take a look at what changed on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between January 9 and January 16, 2022.

  • 43 commits
  • 50 contributors
  • 44 tickets created
  • 3 tickets reopened
  • 41 tickets closed

Ticketticket Created 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

  • Fix an incorrect inline comment in Tests_Ajax_wpAjaxReplytoComment#57452
  • Move the test for wp_save_image_file() with a GD resource to a more appropriate place – #56793
  • Use more specific assertions in image saving tests – #56793

Bundled Themes

  • Add Mastodon domains for menu item icons – #57293, #49099
  • Twenty Twenty-Three: Fix incorrect gradient values in Aubergine theme – #57245

Code Modernization

  • Fix a jQuery Migrate deprecation in wpdialog#56830
  • Rename parameters that use reserved keywords in phpunit/tests/cron.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/customize/manager.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/customize/nav-menus.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/customize/setting.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/file.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/formatting/sanitizeTextField.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/formatting/sanitizeTrackbackUrls.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/functions/deprecated.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/functions/wpListFilter.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/functions/wpListPluck.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/functions/wpListSort.php#56788

Date/Time

  • Prevent errors in current_time() when using timestamp and no value for gmt_offset#57035

Docs

  • Add a missing quote to wp_is_large_network() Docblockdocblock (phpdoc, xref, inline docs) params – #57468, #56792
  • Align spelling with American English – #56811, #56792
  • Align spelling with American English – #56811, #56792
  • Align spelling with American English – #56811, #56792
  • Correct the type of the $user_id parameter in wp_set_password action – #57436
  • Improve wp_style_add_data() function description – #57466, #56792
  • Remove unused post_modified and post_modified_gmt params from wp_insert_post() docblock – #57473, #56792
  • Typo correction in POP3 class send_cmd() inline docsinline docs (phpdoc, docblock, xref)#57449, #56792
  • Use third-person singular verbs for Script Loader related function descriptions, as per docblocks standards – #56792
  • Various docblock fixes in Multisitemultisite Used to describe a WordPress installation with a network of multiple blogs, grouped by sites. This installation type has shared users tables, and creates separate database tables for each blog (wp_posts becomes wp_0_posts). See also network, blog, site WordPress APIAPI An 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. related functions – #56792

Editor

  • Update packages to unblock lazy-loading issues – #56930

Embeds

  • Update Mixcloud oEmbed URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org to the new domain – #57376

Formatting

  • Improve performance of esc_url()#22951

General

HTTPHTTP HTTP 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. API

  • Correct the documentation for the https_ssl_verify and https_local_ssl_verify filters – #54803
  • Correct the name of a filterFilter Filters 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. referenced in the docs for wp_redirect() and wp_safe_redirect()#57464
  • Use correct class reference for Requests’ HTTP Proxy in WP_Http::request()#54504

Help/About

  • Improve comments keyboard shortcuts HelpHub links – #56920

I18Ni18n Internationalization, 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.

  • Initialize WP_Locale array properties – #57427

Menus

  • Compare $menu_item->ID and $menu_item->menu_item_parent as strings and avoid moidifying them. Plugins may change the ID to a string – #57169

Pings/Trackbacks

  • Remove a mention of the “Page” post type from the Discussion metaMeta Meta 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. box – #57429, #11346

Themes

  • Add opt-in Appearance Tools support for Classic Themes – #57460

Upgrade/Install

  • Revert a temporary conditional for testing the Rollbacks feature project – #56057, #57375, #57386

Users

  • Add an action hook on wp_set_password()#57436

Props

Thanks to the 50 people who contributed to WordPress Core on Trac last week: @sergeybiryukov (16), @jrf (12), @aristath (11), @poena (11), @justinahinon (11), @audrasjb (6), @kebbet (5), @peterwilsoncc (5), @sabernhardt (4), @mukesh27 (3), @azaozz (3), @lanacodes (2), @costdev (2), @ironprogrammer (2), @TobiasBg (1), @johnbillion (1), @schlessera (1), @markjaquith (1), @spacedmonkey (1), @dshanske (1), @danielbachhuber (1), @elifvish (1), @tyxla (1), @hellofromTonya (1), @NekoJonez (1), @dennisatyoast (1), @robinwpdeveloper (1), @wildworks (1), @jeremyfelt (1), @Nick_theGeek (1), @Chouby (1), @afragen (1), @chesio (1), @mamaduka (1), @nitman43 (1), @manojkpatil (1), @ashrafulsarkar (1), @pbiron (1), @matclayton (1), @ayeshrajans (1), @mcaskill (1), @tanner m (1), @triumvirate (1), @rryyaanndd (1), @ianbelanger (1), @mehulkaklotar (1), @Chrystl (1), @manooweb (1), @david.binda (1), and @virgar (1).

Congrats and welcome to our 6 new contributors of the week: @lanacodes, @nitman43, @manojkpatil, @matclayton, @triumvirate, @Chrystl ♥️

Core committers: @audrasjb (21), @sergeybiryukov (16), @flixos90 (2), @johnbillion (2), @azaozz (1), @hellofromtonya (1).

#6-2, #core, #week-in-core

A Week in Core – September 12, 2022

Welcome back to a new issue of Week in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Let’s take a look at what changed on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between September 5 and September 12, 2022.

  • 73 commits
  • 118 contributors
  • 51 tickets created
  • 4 tickets reopened
  • 72 tickets closed

The Core team is currently working on the next major releasemajor release A 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., WP 6.1 🛠

Because of the WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. US and its Contributor DayContributor Day Contributor Days are standalone days, frequently held before or after WordCamps but they can also happen at any time. They are events where people get together to work on various areas of https://make.wordpress.org/ There are many teams that people can participate in, each with a different focus. https://2017.us.wordcamp.org/contributor-day/ https://make.wordpress.org/support/handbook/getting-started/getting-started-at-a-contributor-day/., this week was particularly busy: lots of commits, lots of new contributors ♥️

Ticketticket Created 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

  • Always use the amd64 images for MariaDB and MySQLMySQL MySQL is a relational database management system. A database is a structured collection of data where content, configuration and other options are stored. https://www.mysql.com/. on the local development environment – #56528
  • Consistently create a post fixture in old date or slug redirect tests – #55652
  • Consistently set the current user in the tests for retaining a sticky status – #55652
  • Correct magic methods in Basic_Object#56514
  • Correct the cache invalidation tests for old date or slug redirect – #55652
  • Correct the tests for Site Health SQL versions matching readme.html#55791
  • Correctly use the factory method – #55652
  • Do not allow tests to fail for select PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher 8.1 test runs – #55656, #55652
  • Move Site Health unit testunit test Code written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression. class to phpunit/tests/admin/#55652
  • Prevent an Ajax test for IMAGE_EDIT_OVERWRITE from being marked as risky – #55652
  • Remove magic methods from WP_UnitTestCase_Base (without a backward compatibility break) – #56514
  • Remove redundant function_exists() check in a term_is_ancestor_of() test – #55652
  • Set the current user to Editor in test_utf8mb3_post_saves_with_emoji()#55652
  • Temporarily skip the test for recommended PHP version in readme.html#55652
  • Use the default GITHUB_TOKEN instead of a personal access token – #55652
  • Use the factory method instead of the property – #55652
  • Prevent using unsupported NPM versions – #56547

Bundled Themes

  • Twenty Fifteen: Increase the font size used for h5 headings – #52028
  • Twenty Nineteen: Add font smoothing to editor styles – #45909
  • Twenty Seventeen: Ensure long text wraps correctly in the Button BlockBlock Block 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.#55783
  • Twenty Twenty-One: Remove spacer block styles – #56222
  • Twenty Twenty: Add a missing border to button-style links with Outline style – #55824

Code Modernization

  • Add AllowDynamicProperties attribute to all (parent) classes – #56513, #56034
  • Pass correct value to parse_url() in WP_Customize_Manager::get_return_url()#55656
  • Replace deprecated string interpolation patterns – #55787

Coding Standards

  • Clarify time units for various timeout or expiration values – #56293, #55647
  • Use more meaningful variable names for output in the adminadmin (and super admin)#56448, #55647
  • Use more meaningful variable names in WP_Users_List_Table#56448, #55647

Comments

  • Make wp_required_field_indicator() and wp_required_field_message() output filterable – #56389, #54394
  • Remove aria-hidden="true" attribute for visible text in comment template – #55717

Cron APIAPI An 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.

  • Remove unnecessary optimization getting ready events – #56092

Customize

  • Prevent JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. error in Links widgetWidget A 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. when selective refresh is enabled – #39451
  • Use Semantically correct function – #56285

Date/Time

  • Cast extracted strings to integers in wp_resolve_post_date()#54186

Docs

  • Add a @since note for the update_network_meta_cache parameter of WP_Network_Query::__construct()#55646
  • Clarify wp-includes/update.php main docblockdocblock (phpdoc, xref, inline docs) description – #55646
  • Correct @global tags in WP_User_Query::prepare_query()#56543
  • Simplify a comment in WP_Network_Query::get_networks() and WP_Site_Query::get_sites()#55646
  • Various docblock fixes in Site Health related files, as per documentation standards – #55646
  • Various docblock fixes in wp-includes/update.php, as per documentation standards – #55646

Editor

  • Add new render property in block.json for block types – #53148
  • Add support for heading, button, and caption elements – #56467
  • Backportbackport A 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. Elements API updates – #56467
  • Hide query loopLoop The 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. pagination link arrows from assistive technologyAssistive technology Assistive technology is an umbrella term that includes assistive, adaptive, and rehabilitative devices for people with disabilities and also includes the process used in selecting, locating, and using them. Assistive technology promotes greater independence by enabling people to perform tasks that they were formerly unable to accomplish, or had great difficulty accomplishing, by providing enhancements to, or changing methods of interacting with, the technology needed to accomplish such tasks. https://en.wikipedia.org/wiki/Assistive_technology#56067
  • Preload settings and templates permissions – #56467
  • Refresh nones for metaboxes after reauthentication – #52584
  • Update single default template description – #56534
  • Update duotone block supports to allow unset for preset colors – #56467

Embeds

  • Add Google Data Studio as a trusted oEmbed provider – #55771

KSES

  • Allow min(), max(), minmax(), and clamp() values to be used in inline CSSCSS Cascading Style Sheets.#55966
  • Allow min(), max(), minmax(), and clamp() values to be used in inline CSS – #55966
  • Allow assigning values to CSS variables – #56353
  • Allow more layout-related CSS properties – #56122
  • Revert [54092] for now to address unit test failures – #55966

Media

  • Add muted property for video elements – #54788
  • Call update_post_parent_caches function in WP_Media_List_Table class – #56036
  • Generate WebP only for certain registered image sizes – #56526, #55443, #56288
  • Move wp_default_image_output_mapping() filterFilter Filters 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. callback to frontend scope – #55443, #56526
  • Output WebP by default when uploading JPEGs – #55443
  • revert the multi-mime feature – #55443

Networks and Sites

  • Use metadata api in *_network_options functions – #37181

Posts, Post Types

  • Call update_post_author_caches function in WP_Posts_List_Table class – #56100

Query

REST APIREST API The 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/.

  • Add support for searching resources by id – #56546
  • Add support for settings to specify their own additionalProperties – #56493
  • Add the missing site_icon_url to the index – #56467
  • Block autosaving from overwriting changes when locked from editing – #55659
  • Introduce _pretty query parameter to opt in to JSON_PRETTY_PRINT – #41998
  • Use helper functions for building routes in more places – #56472

Script Loader

  • Pass startOfWeek setting to wordpress/date – #56467

Site Health

Widgets

  • Store default options for uninitialized widgets – #54677

Props

Thanks to the 118 (!) people who contributed to WordPress Core on Trac last week: @costdev (17), @jrf (12), @peterwilsoncc (9), @sabernhardt (7), @mukesh27 (7), @bernhard-reiter (7), @spacedmonkey (6), @audrasjb (6), @SergeyBiryukov (5), @flixos90 (4), @andrewserong (4), @cbravobernal (4), @Mamaduka (4), @ramonopoly (4), @hellofromTonya (3), @swissspidy (3), @aristath (3), @zieladam (3), @TimothyBlynJacobs (3), @scruffian (3), @noisysocks (3), @poena (3), @adamsilverstein (3), @andraganescu (2), @joyously (2), @Chouby (2), @isabel_brison (2), @uxl (2), @johnregan3 (2), @get_dave (2), @johnbillion (2), @desrosj (2), @kadamwhite (2), @afercia (2), @azaozz (2), @joedolson (2), @laurelfulford (1), @johnjamesjacoby (1), @jeremyfelt (1), @mikachan (1), @pento (1), @madhudollu (1), @mohitdadhich10 (1), @sc0ttkclark (1), @mrfoxtalbot (1), @umesh84 (1), @russel07 (1), @pratiweb (1), @burhandodhy (1), @alansyue (1), @viralsampat (1), @bph (1), @dd32 (1), @jeawhanlee (1), @gmovr (1), @antpb (1), @alaca (1), @aezazshekh (1), @thakkarhardik (1), @eugenemanuilov (1), @joegrainger (1), @czapla (1), @withinboredom (1), @ndiego (1), @Joen (1), @jorgefilipecosta (1), @ajlende (1), @hiren1094 (1), @jameskoster (1), @ntsekouras (1), @bgardner (1), @anitanenova (1), @robertghetau (1), @afrid1719 (1), @anna.bansaghi (1), @Viper007Bond (1), @Benouare (1), @prokium (1), @joemcgill (1), @primetimejas (1), @chanthaboune (1), @sathyapulse (1), @jhart35 (1), @fabiankaegy (1), @danielbachhuber (1), @matveb (1), @welcher (1), @luisherranz (1), @knutsp (1), @markjaquith (1), @ayeshrajans (1), @juliemoynat (1), @kebbet (1), @kamig478 (1), @chrisguitarguy (1), @rmccue (1), @akabarikalpesh (1), @bhrugesh12 (1), @lev0 (1), @mvraghavan (1), @robinwpdeveloper (1), @rudlinkon (1), @GaryJ (1), @krupalpanchal (1), @arrasel403 (1), @hztyfoon (1), @dpcalhoun (1), @hilayt24 (1), @mmaattiiaass (1), @onemaggie (1), @shoaibkarimali (1), @Drivingralle (1), @LinSoftware (1), @rcorrales (1), @greenshady (1), @nikeo (1), @dlh (1), and @Presskopp (1).

Congrats and welcome to our 21 (!!) new contributors of the week: @uxl, @madhudollu, @mohitdadhich10, @russel07, @jeawhanlee, @alaca, @eugenemanuilov, @joegrainger, @hiren1094, @anitanenova, @afrid1719, @annabansaghi, @prokium, @primetimejas, @jhart35, @kamig478, @mvraghavan, @arrasel403, @shoaibkarimali, @LinSoftware, @rcorrales ♥️

Core committers: @sergeybiryukov (35), @audrasjb (11), @timothyblynjacobs (3), @spacedmonkey (3), @peterwilsoncc (3), @adamsilverstein (2), @flixos90 (2), @jorbin (2), @antpb (2), @westonruter (1), @swissspidy (1), @joemcgill (1), @kadamwhite (1), @desrosj (1), @helen (1), @johnbillion (1), @clorith (1), @gziolo (1), @noisysocks (1).

#6-1, #core, #week-in-core