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

Two Weeks in Core – September 4, 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 August 21 and September 4, 2023.

  • 75 commits
  • 150 contributors (!)
  • 25 new contributors (!)
  • 129 tickets created
  • 13 tickets reopened
  • 117 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

  • Escape post type output as field attribute – #59190

Build/Test Tools

  • Avoid doing copy:dynamic when running grunt watch when using --dev option – #59196
  • Change the version of Node.js in the Codespaces container – #56658
  • Compare results in performance measurement workflow – #58358, #58359
  • Enable running the tests on PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher 8.3 – #59231
  • Ensure database containers are prepared for commands – #30462, #58867
  • Expand database testing to account for all supported versions and types – #30462
  • Implicitly pass secrets to the called workflow – #30462
  • Merge pre-commit changes missed in [56439]#30462
  • Revert unintentional .env change in [56449]#56594
  • Tests_Formatting_MakeClickable should use data providors – #57660
  • Correct uses of ReflectionProperty::setValue() for static properties – #59231
  • Fix coding standards for Tests_Admin_wpUserSearch#41125
  • Remove webfonts tests – #59165

Bundled Theme

  • Twenty Nineteen: Improve social media icon dimension attributes – #45950
  • Ensure that pull quotes are able to use the correct font size – #57854

Coding Standards

  • Remove unused global variables in various /wp-admin/includes/ files – #59254
  • Use strict comparison in wp-includes/class-wp-hook.php#58831
  • Use strict comparison in wp-includes/class-wp-widget.php#58831
  • Use strict comparison in wp-includes/ms-files.php#58831
  • Use strict comparison in wp-includes/ms-site.php#58831

CustomizerCustomizer Tool 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.

  • use the correct X-Robots-Tag 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.#58865

Database

  • Improve the documentation for various methods in the wpdb class – #58833
  • Remove support for the mysql extension – #59118

Docs

  • Add missing param description in WP_Comment class – #58890
  • Clarify post_date_column_time 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. description – #59029
  • Correct default post type in page_template_dropdown() docblockdocblock (phpdoc, xref, inline docs)#58972
  • Docblock improvements in _deprecated_class() function, as per docblocks standards – #58833
  • Fix typo in a translator comment in _deprecated_class()#58833
  • Improve PHPCSPHP Code Sniffer PHP Code Sniffer, a popular tool for analyzing code quality. The WordPress Coding Standards rely on PHPCS. comments general consistency – #58833
  • Use third-person singular verbs in various function descriptions, as per docblocks standards – #58833
  • Wrap inline @see tags in curly braces – #58858

Editor

  • Add relative time strings for the wp-date inline script output – #59219, #47373
  • Don’t use fluid layout value in typography – #58754
  • Ensure main 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. is entered for singular content in 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. themes – #58154
  • Optimize wp_get_block_css_selector to remove array_merge calls for better performance – #59178
  • Preserve block style variations when securing theme – #59108
  • Introduce font-face styles generator and printer – #59165

External Libraries

  • Update jQuery to version 3.7.1 – #59227
  • Upgrade PHPMailer to version 6.8.1 – #59238 – #58833

General

  • Fix coding standards for translatable _deprecated_class() message strings – #41125
  • Introduce a _deprecated_class() function – #41125
  • Replace two esc_url_raw() calls in core with sanitize_url()#59247
  • Use regular core button styles for page header actions – #41986

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.

  • Stop processing HTML when encountering unsupported markup – #59167
  • Update WP_Http class to avoid PHP deprecation warnings – #58876

Help/About

  • Match icon and text in Help for bulk edit button – #58785

Login and Registration

  • Improve test coverage for sign on related functions – #36476

Media

  • Add a filter to the get_available_post_mime_types() function to allow overriding its database query – #52759
  • Prevent warning if shortcodeShortcode A shortcode is a placeholder used within a WordPress post, page, or widget to insert a form or function generated by a plugin in a specific location on your site. is used without attributes – #59206
  • Remove unused $is_IE and $is_opera globals in media_upload_form()#59254

Menus

  • Fix proximity of controls to Save and Delete menus – #56594
  • Revert unintentional changes in [56449]#56594

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

  • Introduce prime_options() to load multiple options with a single database request – #58962
  • Introduce wp_set_option_autoload_values()#58964

Performance

  • Add fallback for $script_uri to prevent firing plugins_url() unnecessarily – #59181

Plugins

  • Correctly display spaces in new plugins search results – #59143

Posts, Post Types

  • Avoid redundant SQL query in get_pages() – #59224
  • Reinstate missing sort_column options in get_pages() – #59226
  • Remove redundant function calls in get_body_class()#43661

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 misleading comment in WP_REST_Blocks_Controller->get_item_schema – #59193

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 missing escaping function for $post_edit_link in wp-admin/revision.php#59141

Rewrite Rules

  • Prevent stampedes when flush_rewrite_rules() is called – #58998

Site Health

  • Show correct debug value for file uploads – #58737
  • fix check name used for REST API permission checks – #59236

Upgrade/Install

  • Add missing escaping function for get_option( 'home' ) in upgrade.php#59199
  • Remove unused globals in core_upgrade_preamble()#59254

Upload

  • Add a MIME type exception for .docx generated by Google Docs – #57898
  • Correct duplicate MIME type for .xlsx files generated by Google Docs – #57898

Users

  • Call add_user_meta() instead of update_user_meta() when adding metadata to a new user – #59212
  • Properly deprecate both constructors in WP_User_Search#41125
  • Remove unused wpdb global in check_password_reset_key()#59185

Widgets

  • Improve performance of has_content method in WP_Widget_Media_Gallery class – #58757

XML-RPC

  • Remove unused wpdb global in wp_xmlrpc_server::mw_newMediaObject()#59185

Props

Thanks to the 150 (!) people who contributed to WordPress Core on Trac last week:

@mukesh27 (14), @costdev (11), @sergeybiryukov (10), @joemcgill (8), @flixos90 (7), @jrf (7), @poena (6), @aristath (5), @afercia (5), @upadalavipul (5), @spacedmonkey (5), @rajinsharwar (4), @desrosj (4), @azaozz (4), @Presskopp (4), @jorbin (3), @oglekler (3), @ramonopoly (3), @swissspidy (3), @david.binda (3), @westonruter (2), @hellofromTonya (2), @oandregal (2), @boonebgorges (2), @tabrisrp (2), @gziolo (2), @daxelrod (2), @johnbillion (2), @hztyfoon (2), @davidbaumwald (2), @sabernhardt (2), @jeffpaul (2), @nidhidhandhukiya (2), @niravsherasiya7707 (1), @michelleblanchette (1), @dhruvishah2203 (1), @matthewfarlymn (1), @elrae (1), @DrewAPicture (1), @rmccue (1), @ohryan (1), @wvega (1), @ahardyjpl (1), @nekojonez (1), @dilipbheda (1), @TobiasBg (1), @Synchro (1), @aslamdoctor (1), @maltfield (1), @szepeviktor (1), @bvreeman22 (1), @johnregan3 (1), @johnjamesjacoby (1), @iammehedi1 (1), @jordanpak (1), @adhun (1), @nithi22 (1), @huzaifaalmesbah (1), @deepakvijayan (1), @zunaid321 (1), @olliejones (1), @laurelfulford (1), @maxinacube (1), @l1nuxjedi (1), @pento (1), @netweb (1), @nacin (1), @crstauf (1), @armondal (1), @tahmidulkarim (1), @crunnells (1), @TimothyBlynJacobs (1), @JordanPak (1), @emailjoey (1), @melchoyce (1), @michaelarestad (1), @danieltj (1), @helen (1), @viralsampat (1), @adamsilverstein (1), @iCaleb (1), @maciejmackowiak (1), @archon810 (1), @rcorrales (1), @varjodesigns (1), @jivygraphics (1), @whyisjake (1), @90lines (1), @sc0ttkclark (1), @jakariaistauk (1), @djcowan (1), @arena (1), @askdesign (1), @bph (1), @bradley2083 (1), @colorfultones (1), @dingo_d (1), @domainsupport (1), @annezazu (1), @dryanpress (1), @elmastudio (1), @francina (1), @garrett-eclipse (1), @gigitux (1), @grantmkin (1), @antonvlasenko (1), @andraganescu (1), @ironprogrammer (1), @Michi91 (1), @youknowriad (1), @jastos (1), @aurooba (1), @dsas (1), @jonoaldersonwp (1), @grapplerulrich (1), @jb510 (1), @annashopina (1), @soean (1), @wildworks (1), @zaguiini (1), @winterstreet (1), @mujuonly (1), @mi5t4n (1), @audrasjb (1), @simison (1), @mikeschroder (1), @manzoorwanijk (1), @adrianduffell (1), @ipajen (1), @dmsnell (1), @skorasaurus (1), @shiloey (1), @jeremyyip (1), @mburridge (1), @jffng (1), @joostdevalk (1), @jorgefilipecosta (1), @juanmaguitar (1), @mamaduka (1), @matveb (1), @mitogh (1), @scruffian (1), @ndiego (1), @ntsekouras (1), @ocean90 (1), @paaljoachim (1), @pagelab (1), @peterwilsoncc (1), @priethor (1), and @mattkeys (1).

Congrats and welcome to our 25 (!) new contributors of the week: @niravsherasiya7707, @michelleblanchette, @matthewfarlymn, @wvega, @ahardyjpl, @aslamdoctor, @maltfield, @bvreeman22, @iammehedi1, @jordanpak, @maxinacube, @l1nuxjedi, @JordanPak, @emailjoey, @varjodesigns, @jivygraphics, @90lines, @djcowan, @askdesign, @Michi91, @jastos, @winterstreet, @mi5t4n, @adrianduffell, @shiloey ♥️

Core committers: @sergeybiryukov (15), @audrasjb (13), @johnbillion (6), @desrosj (5), @swissspidy (4), @drewapicture (4), @jorbin (3), @peterwilsoncc (3), @joedolson (3), @joemcgill (3), @flixos90 (2), @isabel_brison (2), @hellofromtonya (2), @timothyblynjacobs (1), @davidbaumwald (1), @antpb (1), @kadamwhite (1), @spacedmonkey (1), @westonruter (1), @adamsilverstein (1), @bernhard-reiter (1), @costdev (1), and @whyisjake (1).

#6-4, #core, #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

A Week in Core – September 26, 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 19 and September 26, 2022.

  • 110 commits
  • 173 contributors
  • 66 tickets created
  • 13 tickets reopened
  • 91 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 🛠 Last week, we entered the 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. cycle, with the release of WP 6.1 beta 1 🚀

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

  • Add new get_views_links method to WP_List_Table#42066
  • Allow to wrap Settings sections with custom HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. content – #17851

Bootstrap/Load

  • Confirm the value of WP_ENVIRONMENT_TYPE before using – #55741
  • Introduce is_*_admin_screen() aliases for is_*_admin() function family – #56400
  • Send 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. headers after querying posts in WP::main()#56068

Build/Test Tools

  • Enable debugging when rerunning a failed workflow – #56407
  • Increase the timeout value for MacOS jobs – #55652
  • Remove unnecessary --no-interaction option from Composer commands – #54695
  • Temporarily allow the NPM testing workflow to fail – #56615
  • Test building WordPress to run from src first – #55652
  • Update NPM dependencies in default themes – #56641
  • Update NPM dependencies in default themes, part 2 – #56641
  • Update NPM dependencies to their latest versions – #56641
  • Improve how combined assets are generated – #56615

Bundled Themes

  • Import Twenty Twenty-Three, the new default theme for WordPress 6.1 – #56383
  • Twenty Twenty-One: Add a missing HTML comment for CustomizerCustomizer Tool 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. notice control – #55725
  • Twenty Twenty-Three: Bug fixes and improvements for beta 2 – #56383
  • Twenty Twenty: Ensure the fallback fonts is applied to all content elements for non-latin languages – #56396

Chore

  • Run browserslits update – #56467

Code Modernization

  • Fix null to non-nullable deprecation in WP_REST_Users_Controller::update_item()#55656

Coding Standards

  • Applying an alignment fix from running composer format#56467
  • Correct alignment in WP_Theme_JSON_Resolver::get_core_data()#55647
  • Move WP_List_Table::get_views_links() to a more appropriate place – #42066
  • Remove extra space in 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/. plugins controller test class – #56629
  • Rename WordPress Dependencies 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. class files – #37861, #55647
  • Replace double quote with single quote in test_if_failed_update()#55758
  • Various alignment fixes from composer format#39210, #55443, #56288, #56092, #56408, #56467, #55881

Cron API

  • Add error logging and 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. to wp-cron.php#56048

Date/Time

  • Correct sanitization of timezone_string in sanitize_option()#56468#53404
  • Correct sanitization of localized default timezone_string in populate_options()#56468
  • Correct timezone dropdown list creation in wp_timezone_choice()#56468
  • Minor tweak to support deprecated timezones on General Settings screen – #56468

Docs

  • Correct @see reference to deprecated_function_run in the _deprecated_function docblockdocblock (phpdoc, xref, inline docs)#56625
  • Correct the wording in wp_lostpassword_url() description – #55646
  • Fix prev_text and next_text parameters type in paginate_links()#56622, #55646
  • Fix wp_get_layout_style() parameter documentation – #55646
  • Increase the specificity of various property documentation – #55646
  • Remove a change that needs to instead be applied in 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/ repo – #55646
  • Typo correction in _load_textdomain_just_in_time() docblock – #55646
  • Updates and corrections to various inline docsinline docs (phpdoc, docblock, xref) added in 6.1 – #55646
  • Use typed array notation for the $locales parameter in 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 update filters – #55646
  • Various improvements and corrections to inline docs – #55646

Editor

  • Remove repetitive calls to file_get_contents() in 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. editor settings – #56637
  • Remove duplicate use of realpath() in register_block_style_handle()#56636
  • Add box-shadow support for blocks through theme.json files – #56467
  • Add has_archive property to the post types REST endpoint – #56467
  • Add post types property to wp-rest-block-patterns-controller.php – #56467
  • Adds template types, is_wp_suggestion, and fallback template content – #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. block supports (border, color, elements, spacing) from Gutenberg to WP 6.1 – #56467
  • Backport block supports 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, registrations and tests to 6.1 – #56467
  • Backport hooks to filter theme.json data from Gutenberg to 6.1 – #56467
  • Fix function name case in wp_default_packages_inline_scripts()#56467
  • Fix missing frontend section presets output – #56467
  • Fix spacing property generation in flow layout type – #56467
  • Fix text zoom on link popup editor – #53174
  • Improve block loading PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher performance – #55005
  • Improves layout block support in wp_get_layout_style()#56467
  • Introduce spacing presets in global style properties – #56467
  • Introduces fluid typography and uses Style Engine – #56467
  • Make template names and descriptions dynamic – #56467
  • Revert [54305]
  • Sync changes from the Gutenberg plugin 14.1 release – #56467

External Libraries

  • Update the jQuery UIUI User interface library to version 1.13.2 – #56239
  • Update the jQuery library to version 3.6.1 – #56451

General

  • Correct the fallback logic in apache_mod_loaded()#56010
  • Ensure adminadmin (and super admin) notices are properly displayed on Site Health layout – #54624
  • Pass $action to nonce_life filter – #35188
  • Remove file_exists() checks after calling realpath()#56654
  • Replace Codex links with their HelpHub counterparts – My Sites screen – #48987
  • Revert [54225]#48987
  • Throw a more descriptive error when templates are not found – #36631

Help/About

  • Add a help tab in Theme Install screen for the new “Block Themes” search filter – #56405
  • Make translator comments version agnostic and make version translatable on the About page – #54741
  • Remove an unwanted whitespace in a Theme Install screen help tab string – #56405

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.

  • Remove code tags from translatable strings in WP_List_Table::get_views_links()#42066
  • Update list of continents and cities for the timezone selection – #56468

Login and Registration

  • Add a new filter for the lost password link – #55388

Media

  • Add caching to wp_count_attachments()#55227
  • Change alt attribute field to textarea in media library – #50066
  • Fix JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. TypeError with video playlists and native video – #47513
  • Respect EXIF Rotations – #54937
  • Revert WebP generation – #55443

Menus

Networknetwork (versus site, blog) and Sites

  • Move global_terms_enabled() to its proper final resting place – #21734
  • Officially remove global terms – #21734
  • Store main site id of a network in network options – #55802

Posts, Post Types

  • Fix WP_Query parameter used by get_page_by_title()#56609, #36905
  • Post title should not be translatable in get_user_data_from_wp_global_styles method – #55392
  • Update new wp_post_class_taxonomies filter name for consistency – #37114
  • Cache get_page_by_title()#36905
  • Coding standards fixes following [54234] – #36905
  • Prevent get_sample_permalink() modifying the post object – #54736

REST API

  • Fix check for has_archive inclusion – #56618

Role/Capability

  • Add a new update_role function – #54572

Security

  • Salting functions: translate the phrase “put your unique phrase here” – #55937

Shortcodes

  • Reverse wrapping of apply_shortcodes() and do_shortcode()#55883
  • Revert default filter callback changes from apply_shortcodes to do_shortcode#55883

Site Health

  • Improve the details provided by the REST API checks – #54617

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.

  • Standardise the format used to describe arguments passed to actions and filters inside wp_insert_term() and wp_update_term()#55441

Tests

  • Add tests with deprecated timezone strings – #56468
  • Delete Link Manager plugin after running REST API plugins controller tests – #56629
  • Remove empty directory in WP_UnitTestCase_Base::rmdir()#55652
  • Remove nested empty directories in WP_UnitTestCase_Base::rmdir()#55652
  • Replace the timezone used in date/time tests – #56468
  • Reset timezone-related options if the tests change them – #56468
  • Revert removing empty directory in WP_UnitTestCase_Base::rmdir() for now – #55652, #56629
  • Simplify the data provider for testing whether KSES globals are defined – #55652

Text Changes

  • Remove self-reference (“we”) in WordPress Admin – #55758, #46057

Themes

  • Import Twenty Twenty-Three is now the default theme – #56383
  • Relocate actions firing prior to and after template loading – #54541

Tools

  • Fix running build scripts on Windows does not generate CSSCSS Cascading Style Sheets. files for blocks – #56616
  • Simplify syncing core blocks from Gutenberg plugin to Core – #56179

Upgrade/Install

  • Add plugin 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 automatic update email – #53049
  • Update sodium_compat to v1.19.0 – #56653
  • Use “placeholder” for example values in setup-config.php – #56365

Users

  • Make wp_list_authors() and wp_list_users() filterable – #17025

i18n

  • Ensure empty strings are consistently translated to ''#55941

Props

Thanks to the 173 (!!) people who contributed to WordPress Core on Trac last week: @costdev (31), @SergeyBiryukov (23), @audrasjb (19), @jrf (12), @hellofromTonya (11), @peterwilsoncc (9), @bernhard-reiter (8), @desrosj (8), @mukesh27 (7), @mcsf (5), @aristath (5), @oandregal (5), @andrewserong (5), @kebbet (5), @johnbillion (4), @gziolo (4), @Clorith (4), @afercia (4), @dd32 (4), @johnjamesjacoby (4), @adamsilverstein (4), @ramonopoly (4), @ntsekouras (4), @rafiahmedd (4), @joedolson (4), @sabernhardt (4), @isabel_brison (3), @spacedmonkey (3), @antonvlasenko (3), @madhudollu (3), @poena (3), @nacin (3), @dingo_d (2), @scribu (2), @jameskoster (2), @onemaggie (2), @scruffian (2), @chaion07 (2), @DrewAPicture (2), @wonderboymusic (2), @glendaviesnz (2), @Presskopp (2), @robinwpdeveloper (2), @czapla (2), @cbravobernal (2), @marcyoast (2), @oliverstapelfeldt (2), @wildworks (2), @clorith (2), @mikachan (2), @ironprogrammer (2), @critterverse (2), @beafialho (2), @hilayt24 (2), @colorful tones (1), @daisyo (1), @dianeco (1), @bgardner (1), @greenshady (1), @anariel-design (1), @amjadr360 (1), @joen (1), @pbiron (1), @thijso (1), @khokansardar (1), @ramon-fincken (1), @JosVelasco (1), @ChrisHardie (1), @Ipstenu (1), @monolithon (1), @pento (1), @noisysocks (1), @joehoyle (1), @wparslan (1), @JavierCasares (1), @edent (1), @mxbclang (1), @Rahmohn (1), @herregroen (1), @jffng (1), @NomNom99 (1), @kafleg (1), @garrett-eclipse (1), @chaton666 (1), @krupalpanchal (1), @haritpanchal (1), @marybaum (1), @giuseppemazzapica (1), @martinkrcho (1), @pbearne (1), @dwainm (1), @pcfreak30 (1), @igmoweb (1), @jorbin (1), @jonny-s (1), @boonebgorges (1), @kishanjasani (1), @Dharm1025 (1), @thelovekesh (1), @tanvirul (1), @soean (1), @richtabor (1), @pbking (1), @mtias (1), @luminuu (1), @juhise (1), @maksimkuzmin (1), @kraftbj (1), @joyously (1), @hellofromtonya (1), @tobifjellner (1), @rehanali (1), @engahmeds3ed (1), @petitphp (1), @presstoke (1), @ocean90 (1), @here (1), @courane01 (1), @davidbaumwald (1), @vikasprogrammer (1), @maximemeganck (1), @gabri3lmarques (1), @dlh (1), @jsnajdr (1), @Camwynsp (1), @draganescu (1), @mamaduka (1), @dmsnell (1), @sergeybiryukov (1), @azaozz (1), @zieladam (1), @paragoninitiativeenterprises (1), @ndiego (1), @felipeelia (1), @lopo (1), @manooweb (1), @Chouby (1), @hugodevos (1), @Boniu91 (1), @krishaweb (1), @timothyblynjacobs (1), @mburridge (1), @palmiak (1), @jeherve (1), @chriscct7 (1), @ryan (1), @ross_ritchey (1), @griffinjt (1), @namithjawahar (1), @whaze (1), @joostdevalk (1), @jonoaldersonwp (1), @webcommsat (1), @swissspidy (1), @schlessera (1), @afragen (1), @antpb (1), @mciampini (1), @mboynes (1), @Enchiridion (1), @oglekler (1), @jorgefilipecosta (1), @cbirdsong (1), @aaronrobertshaw (1), @youknowriad (1), @TimothyBlynJacobs (1), @chetan200891 (1), @Mte90 (1), @kevinB (1), @matveb (1), @mikeschroder (1), @tbember (1), and @tobiasbg (1).

Congrats and welcome to our 15 (!) new contributors of the week: @marcyoast, @colorfultones, @anariel-design, @amjadr360, @thijso, @khokansardar, @edent, @here, @maximemeganck, @gabri3lmarques, @Camwynsp, @hugodevos, @ross_ritchey, @cbirdsong, @tbember ♥️

Core committers: @sergeybiryukov (28), @audrasjb (23), @desrosj (20), @davidbaumwald (13), @hellofromtonya (7), @jorgefilipecosta (6), @johnbillion (5), @gziolo (5), @peterwilsoncc (5), @joedolson (4), @spacedmonkey (2), @antpb (1), @clorith (1).

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

A Week in Core – September 19, 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 12 and September 19, 2022.

  • 94 commits
  • 139 contributors
  • 53 tickets created
  • 2 tickets reopened
  • 71 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 🛠

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

  • Add new get_views_links method to WP_List_Table#42066

Build/Test Tools

  • Move the basic get_block_templates() test to the dedicated file – #55652
  • Rename the test for pre_option 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. to match the filter name – #37930
  • Rename the test for wp_guess_url() to match the function name – #36827
  • Replace the timezone used in date/time tests – #56468
  • Reset timezone-related options if the tests change them – #56468#55388
  • Simplify the data provider for testing whether KSES globals are defined – #55652
  • Update the test for respecting the post type in get_block_templates()#55881

Bundled Themes

  • Fifteen: Ensure border-bottom styles are applied to 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.#55006, #55824
  • Nineteen: Define underline thickness for links – #45925
  • Seventeen: Ensure long text wraps correctly in the Button Block – #55783
  • Twenty-One: Add a missing HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. comment for CustomizerCustomizer Tool 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. notice control – #55725
  • Twenty-One: Fix Heading Block alignment when nested in Cover Block – #56050
  • Twenty-One: Remove WooCommerce related CSSCSS Cascading Style Sheets. selectors – #56366
  • Twenty-Two: Add “AccessibilityAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) Ready” 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 theme in repository – #55172
  • Twenty: Correctly align Social Icons block in the editor – #55987
  • Twenty: Ensure Latest Posts block set to 2 columns displays accordingly in the Editor – #56175
  • Twenty: Ensure headings styles are consistent between editor and front-en – #56194
  • Twenty: Ensure link color is inherited from paragraph in the editor – #56214
  • Twenty: Fix Heading Block alignment when nested in Cover Block – #56049
  • Twenty: Fix Social 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. alignment – #56474
  • Twenty: Improve support for Post Title block alignment – #56167

Code Modernization

  • Add AllowDynamicProperties attribute to all (parent) classes – #56513, #56034
  • Fix autovivification from false to array in WP_Scripts::localize()#55656
  • Pass correct value to parse_url() in WP_Customize_Manager::get_return_url()#55656
  • Reduce CSS float usage in wp-adminadmin (and super admin) – Timezone settings – #55557
  • Remove -webkit-appearance CSS declarations – #38431
  • Replace deprecated string interpolation patterns – #55787

Coding Standards

  • Move WP_List_Table::get_views_links() to a more appropriate place – #42066
  • Remove unwanted spaces in the WP_Block_Type class
  • Replace double quote with single quote in test_if_failed_update()#55758
  • Various alignment fixes from composer format#39210, #55443, #56288, #56092, #56408, #56467, #55881

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

Docs

  • Add missing @since history in Gallery ShortcodeShortcode A shortcode is a placeholder used within a WordPress post, page, or widget to insert a form or function generated by a plugin in a specific location on your site. function – #56206, #55646
  • Clarify documentation for the nav_menu_item_id filter – #56574, #55646
  • Clarify that get_page_template() doesn’t work on block themes – #56394, #55646
  • Clarify the $allowed_protocols default value in various KSES functions – #56580
  • Correct @return type for WP_Block_Parser::parse()#56581
  • Correct @return value for wp_get_http_headers()#54225, #55646
  • Correct @since tags for some block parser properties and methods – #56581
  • Correct the wording in wp_lostpassword_url() description – #55646
  • Revert the WP_Block_Parser documentation changes now – #56581
  • Typo correction in _load_textdomain_just_in_time() docblockdocblock (phpdoc, xref, inline docs)#55646
  • Update wp_rand docblock to clarify that it returns a non-negative number – #15089
  • Use third-person singular verbs in Media 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. function descriptions, as per docblocks standards – #55646
  • Use third-person singular verbs in Template Loading functions descriptions, as per docblocks standards – #55646

Editor

  • Add new render property in block.json for block types – #53148
  • Allow registering multiple items for all supported asset types – #56408
  • 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. Style Engine API functions, classes and tests – #56467
  • Backport build_query_vars_from_query_block changes from 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/ repository – #56467
  • Backport wp_theme_element_class_name() alias – #56467
  • Backport block supports (border, color, elements, spacing) from Gutenberg to WP 6.1 – #56467
  • Backport block supports filter callback, registrations and tests to 6.1 – #56467
  • Backport foundation for Layout block support refactor (part 1) – #56467
  • Backport foundation for Layout block support refactor (part 1) – #56467
  • Finalize the theme_json_get_style_nodes hook name – #56467
  • Fix function name case in wp_default_packages_inline_scripts()#56467
  • Fix get_block_templates() to get templates for a post type – #55881
  • Fix text zoom on link popup editor – #53174
  • 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
  • Persist preferences in user 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.#56467
  • Revert [54159] – #56467

External Libraries

  • Update the jQuery UIUI User interface library to version 1.13.2 – #56239
  • Update the jQuery library to version 3.6.1 – #56451

Feeds

  • Add a set of fine-grained filters to disable the different types of feed links separately – #55904

General

  • Add a new filter for the_posts_pagination_args#53392
  • Correct path replacement regex in wp_guess_url#36827
  • Ensure admin notices are properly displayed on Site Health layout – #54624
  • Pass $action to nonce_life filter – #35188
  • Replace Codex links with their HelpHub counterparts – My Sites screen – #48987
  • Replace Codex with HelpHub in WordPress readme – #48987

Help/About

  • Make translator comments version agnostic and make version translatable on the About page – #54741
  • Remove .hidden class when the Help Tab panel is displayed – #27697

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.

  • Remove code tags from translatable strings in WP_List_Table::get_views_links()#42066

Login and Registration

  • Access improvements to networknetwork (versus site, blog) signup – #40361
  • Required fields in network registration – #54344

Options, Meta APIs

  • Add a new pre-option filter – #37930

Plugins

  • Visually align 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 cards in Plugin Install screen – #55721, #55272

Posts, Post Types

  • Improve performance of the get_user_data_from_wp_global_styles method – #55392
  • Update new wp_post_class_taxonomies filter name for consistency – #37114

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 settings to specify their own additionalProperties – #56493

Role/Capability

  • Add a new update_role function – #54572

Site Health

  • Adjust margins for the Site Health dashboard widget – #56369
  • Improve the description for Authorization 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. checks – #54508
  • Improve the details provided by the REST API checks – #54617
  • Add a check to wp_check_php_version() whether the current PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher version is lower than the next (desired) minimum version, Set the next desired minimum PHP version to 7.2, Use that check to update the warnings in the wp_dashboard_php_nag() widget, and on the Site Health screen – #56199
  • Add a menu bubble with the critical issues count to the Tools -> Site Health submenu – #56199

Text Changes

  • Remove self-reference (“we”) in WordPress Admin – #55758, #46057

Themes

  • Implement file description for theme.json#55325
  • Introduces block-based template parts for Classic themes – #56467

Upgrade/Install

  • Add plugin 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 automatic update email – #53049
  • Remove _copy_dir() function as originally intended – #55712, #17173
  • Update sodium_compat to v1.18.0 – #56564

Props

Thanks to the 139 (!!) people who contributed to WordPress Core on Trac last week: @audrasjb (29), @costdev (25), @sabernhardt (18), @SergeyBiryukov (15), @bernhard-reiter (10), @mukesh27 (10), @jrf (8), @hellofromTonya (6), @peterwilsoncc (6), @Clorith (5), @joedolson (5), @aristath (4), @desrosj (4), @kajalgohel (4), @afercia (4), @poena (4), @kebbet (4), @tahmidulkarim (3), @joyously (3), @spacedmonkey (3), @zieladam (3), @ramonopoly (3), @andrewserong (3), @multidots1896 (3), @robinwpdeveloper (3), @scruffian (2), @isabel_brison (2), @aaronrobertshaw (2), @noisysocks (2), @mamaduka (2), @netweb (2), @neychok (2), @umesh84 (2), @mrfoxtalbot (2), @Chouby (2), @webcommsat (2), @smit08 (2), @fabiankaegy (2), @ironprogrammer (2), @azaozz (2), @ocean90 (2), @antonvlasenko (2), @NomNom99 (2), @dd32 (2), @Presskopp (2), @pbiron (2), @luisherranz (1), @juliemoynat (1), @harshvaishnav (1), @ayeshrajans (1), @markjaquith (1), @knutsp (1), @welcher (1), @grandeljay (1), @bhrugesh12 (1), @annezazu (1), @mikeschroder (1), @ryokuhi (1), @utz119 (1), @kjellr (1), @bph (1), @matveb (1), @kamig478 (1), @lopo (1), @robertghetau (1), @NathanAtmoz (1), @voldemortensen (1), @jdgrimes (1), @curdin (1), @petitphp (1), @flixos90 (1), @jamesckemp (1), @paragoninitiativeenterprises (1), @nidhidhandhukiya (1), @kmadhak (1), @kapilpaul (1), @pbearne (1), @timothyblynjacobs (1), @dlh (1), @afragen (1), @devtanbir (1), @mhkuu (1), @TobiasBg (1), @cfinke (1), @sharjeelkhanvmi (1), @chaton666 (1), @davidbaumwald (1), @JosVelasco (1), @tobiasbg (1), @mxbclang (1), @dingo_d (1), @rafiahmedd (1), @wparslan (1), @monolithon (1), @glendaviesnz (1), @Ipstenu (1), @ChrisHardie (1), @oliverstapelfeldt (1), @maksimkuzmin (1), @henrywright (1), @gziolo (1), @juhise (1), @Dharm1025 (1), @garrett-eclipse (1), @jonny-s (1), @jorbin (1), @DrewAPicture (1), @dwainm (1), @giuseppemazzapica (1), @marybaum (1), @johnjamesjacoby (1), @SteelWagstaff (1), @allisonplus (1), @maartenj (1), @haritpanchal (1), @danfarrow (1), @allancole (1), @bengreeley (1), @cbravobernal (1), @ntsekouras (1), @manfcarlo (1), @helen (1), @grabmedia (1), @dilipbheda (1), @armondal (1), @youknowriad (1), @hakre (1), @talldanwp (1), @oandregal (1), @aljullu (1), @andregal (1), @adamsilverstein (1), @rolfsiebers (1), @celloexpressions (1), @laurent22777 (1), @tobifjellner (1), @jeremyfelt (1), @westi (1), and @annabansaghi (1).

Congrats and welcome to our 18 (!!) new contributors of the week: @tahmidulkarim, @harshvaishnav, @jamesckemp, @kmadhak, @devtanbir, @mhkuu, @sharjeelkhanvmi, @monolithon, @oliverstapelfeldt, @maksimkuzmin, @jonnys, @dwainm, @giuseppemazzapica, @allisonplus, @maartenj, @grabmedia, @armondal, @laurent22777 ♥️

Core committers: @audrasjb (40), @sergeybiryukov (24), @davidbaumwald (9), @hellofromtonya (5), @joedolson (3), @desrosj (3), @clorith (3), @gziolo (3), @azaozz (2), @spacedmonkey (1), @timothyblynjacobs (1).

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

A Week in Core – August 22, 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 August 15 and August 22, 2022.

  • 28 commits
  • 92 contributors
  • 39 tickets created
  • 5 tickets reopened
  • 32 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 🛠

The team has also started working on Twenty Twenty-Three, the next bundled theme that will be included with WP 6.1 🎨

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

  • Enable running the tests on PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher 8.2 – #56009
  • Increase the Dependabot pull request limit for 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/ Actions – #55652
  • Only define WP_PLUGIN_DIR when running core tests – #39210
  • Assign created fixtures to the dedicated class properties in some test classes – #54662
  • Clean up test image before performing assertions in image tests – #55652
  • Consistently skip tests for non-implemented methods in 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/. test classes – #40538, #41463, #55652
  • Correct MariaDB version check in database charset tests – #53623

Code Modernization

  • Remove dynamic properties in theme tests – #56033

Coding Standards

  • Check for deprecated options before wp_installing()#55647
  • Remove a one-time variable in themes.view.Installer.browse#56283
  • Simplify the logic in wp_not_installed()#55647

Database

  • Account for utf8 being renamed to utf8mb3 in newer 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/. versions – #53623

Docs

  • Remove incorrect default value for $path argument of admin_url()#55646
  • Use third-person singular verbs for function descriptions in WP_Tax_Query class, as per docblocks standards – #55646

Editor

  • 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. 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. fixes from 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/ into Core for WP 6.0.2 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).#56414
  • Ensure get_block_templates() returns unique templates or template parts – #56271

Embeds

  • Fix missing labels and duplicate IDs – #55664

External Libraries

  • Upgrade PHPMailer to version 6.6.4 – #56016

Help/About

  • Improve vertical alignment in the Additional Design Tools section – #56210

Mail

  • Prevent the last character of names in “From” headers from being trimmed – #19847

Permalinks

  • Fix aria-live text when removing custom structure – #56230

Query

  • Cast 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 to BINARY for case-sensitive key comparisons in WP_Meta_Query#51740

Script Loader

  • Remove default DNSDNS DNS is an acronym for Domain Name System - how you assign a human readable address to a website’s exact numeric coded location (ie. wordpress.org uses the actual IP address 198.143.164.252). prefetch entry for s.w.org – #40426, #37387

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.

  • Associate field descriptions with fields – #55651

Themes

  • Add a 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. Themes 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. in Theme Install Screen – #56283, #meta6330
  • Add support for Update URI 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.#14179, #23318, #32101
  • Include a hyphen in the Block Themes tab key on Add Themes screen – #56283

Upgrade/Install

  • Make WP_Filesystem_FTPext::size() return false on failure – #51170

Props

Thanks to the 92 (!) people who contributed to WordPress Core on Trac last week: @SergeyBiryukov (8), @costdev (4), @jrf (3), @swissspidy (2), @joyously (2), @audrasjb (2), @desrosj (2), @afercia (2), @ironprogrammer (2), @johnbillion (2), @sabernhardt (2), @Mte90 (1), @oglekler (1), @marybaum (1), @webcommsat (1), @dd32 (1), @weboccults (1), @rudlinkon (1), @hellofromTonya (1), @jonmackintosh (1), @antonvlasenko (1), @uofaberdeendarren (1), @leemon (1), @dougwollison (1), @tomepajk (1), @ayeshrajans (1), @zieladam (1), @superpoincare (1), @mattyrob (1), @kovshenin (1), @mikehansenme (1), @hakanca (1), @flixos90 (1), @aaemnnosttv (1), @garrett-eclipse (1), @jhabdas (1), @joelhardi (1), @skithund (1), @rafiahmedd (1), @luminuu (1), @johnregan3 (1), @kebbet (1), @joedolson (1), @Synchro (1), @JavierCasares (1), @lev0 (1), @gregorlove (1), @benoitchantre (1), @ryno267 (1), @infolu (1), @miqrogroove (1), @afragen (1), @apedog (1), @markparnell (1), @grapplerulrich (1), @williampatton (1), @earnjam (1), @dingdang (1), @JeroenReumkens (1), @crazycoders (1), @nhuja (1), @sean212 (1), @filosofo (1), @design_dolphin (1), @mweichert (1), @DrewAPicture (1), @markjaquith (1), @DavidAnderson (1), @rmccue (1), @jdgrimes (1), @meloniq (1), @Otto42 (1), @chriscct7 (1), @aspexi (1), @nvartolomei (1), @mordauk (1), @knutsp (1), @GaryJ (1), @TJNowell (1), @gMagicScott (1), @mikejolley (1), @damonganto (1), @Ipstenu (1), @juliobox (1), @Rarst (1), @jb510 (1), @GeekStreetWP (1), @khromov (1), @georgestephanis (1), @jorbin (1), @joostdevalk (1), and @drewapicture (1).

Congrats and welcome to our 5 new contributors of the week: @jonmackintosh, @uofaberdeendarren, @tomepajk, @hakanca, @jhabdas ♥️

Core committers: @sergeybiryukov (18), @joedolson (3), @desrosj (3), @audrasjb (3), and @gziolo (1).

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

A Week in Core – March 28, 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 March 21 and March 28, 2022.

  • 34 commits
  • 39 contributors
  • 49 tickets created
  • 5 tickets reopened
  • 40 tickets closed

The Core team is currently working on the next minor releaseMinor Release A set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality., WP 5.9.3, and on the next major, WP 6.0 🛠

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

  • Remove a duplicate sentence after [52980]#38913
  • Rephrase some sentences after [52978]#38913
  • Replace contracted verb forms for better consistency – #38913

Build/Test Tools

  • First pass at a .git-blame-ignore-revs file – #55422
  • Make comment cache group persistent in object-cache.php – #54725

Bundled Themes

  • Twenty Nineteen: Override flex order in comment form – #46600

Code Modernization

  • Rename parameters that use reserved keywords in wp-admin/includes/class-ftp.php#55327
  • Rename parameters that use reserved keywords in wp-admin/includes/class-plugin-upgrader.php#55327
  • Rename parameters that use reserved keywords in wp-admin/includes/class-theme-upgrader.php#55327
  • Rename parameters that use reserved keywords in wp-admin/includes/class-wp-debug-data.php#55327

Coding Standards

  • Remove a one-time $pieces variable in wp-includes/class-wp-*-query.php#54728
  • Simplify some long conditions in wp-includes/class-wp-term-query.php#55352, #54728
  • Use multi-line strings for the $this->request property in wp-includes/class-wp-*-query.php#54728
  • Wrap the $this->request property in wp-includes/class-wp-*-query.php#54728

Docs

  • Adjust documentation in get_post_galleries() tests per the documentation standards – #54725, #54729
  • Adjust the term_exists_default_query_args 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. docs per the documentation standards – #55439
  • Correct the documented return types for date and time related functions and filters – #54729
  • Use third-person singular verbs for function descriptions in wp-admin/includes/theme.php and wp-admin/includes/theme-install.php, per the documentation standards – #54729
  • Use third-person singular verbs for function descriptions in wp-includes/rewrite.php, per the documentation standards – #54729
  • Use third-person singular verbs for function descriptions in wp-includes/taxonomy.php, per the documentation standards – #54729
  • Use third-person singular verbs for function descriptions in wp-includes/template.php, per the documentation standards – #54729

Editor

  • Optimize preload paths for post and site editors – #55337

External Libraries

  • Update Jcrop to version 0.9.15 – #54035

Menus

  • Improve cache priming in the wp_get_nav_menu_items function – #55428
  • Improve padding on bulk action labels for small screens – #54855

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

  • Rephrase the description of the “Avatars” section – #32998

Plugins

  • Avoid stomping of some variables in wp-settings.php#55432

Query

  • Ensure that sticky post query returns all sticky posts – #36907
  • Query: Improved sticky post query – #36907

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.

  • Introduce term_exists_default_query_args filter – #55439

Tests

  • Remove some unused variables in phpunit/tests/filters.php#54725

Tests

  • Use a more descriptive name for the sticky posts test that verifies the parameters from the main query – #36907

Upgrade/Install

  • Fix the docs for the default value of $clear_working in WP_Upgrader::run#55450
  • Update sodium_compat to v1.17.1 – #55453

Props

Thanks to the 39 people who contributed to WordPress Core on Trac last week: @SergeyBiryukov (10), @peterwilsoncc (7), @jrf (7), @audrasjb (4), @Spacedmonkey (4), @aristath (4), @poena (4), @justinahinon (4), @azouamauriac (3), @sabernhardt (3), @helen (2), @costdev (2), @uday17035 (1), @Presskopp (1), @socalchristina (1), @aandrewdixon (1), @hellofromTonya (1), @francina (1), @JeffPaul (1), @paulkevan (1), @sumitsingh (1), @ryokuhi (1), @priyank9033 (1), @rehanali (1), @noisysocks (1), @Chouby (1), @paragoninitiativeenterprises (1), @karpstrucking (1), @hareesh-pillai (1), @garrett-eclipse (1), @jsnajdr (1), @webcommsat (1), @GaryJ (1), @netweb (1), @johnjamesjacoby (1), @ocean90 (1), @joyously (1), @stevegrunwell (1), and @pbiron (1).

Congrats and welcome to our new contributor of the week: paulkevan ♥️

Core committers: @sergeybiryukov (13), @audrasjb (12), @spacedmonkey (5), @davidbaumwald (2), @helen (1), and @johnbillion (1).

#5-9-3, #6-0, #core, #week-in-core

A Week in Core – November 15, 2021

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 November 8 and November 15, 2021.

  • 116 commits (!)
  • 204 contributors (!)
  • 57 tickets created
  • 10 tickets reopened
  • 89 tickets closed

The Core team is currently working on the 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., WordPress 5.9 🛠

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

About/Help

  • Add commas to end of multi-line array items – #54357
  • add docs links to several screens – #54357

Administration

  • Restores “Customize” menu item for non-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. themes and moves for block themes – #54418

Bootstrap/Load

  • Add HTTP/3 as a valid 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. protocol. – #54404
  • Bootstrap/Load: Check $_SERVER['SCRIPT_NAME'] exists before passing to strpos() in wp_fix_server_vars()#54142

Build/Test Tools

  • Cache the results of PHP_CodeSniffer across workflow runs – #49783
  • Exclude plugins and non-bundled themes from PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher compatibility scans – #54425
  • Make adjustments to how Quick Draft tests confirm expected behavior – #54409
  • Mock no results remote request in WP_REST_Block_Directory_Controller:: get_items() – #54420
  • Mock remote request for WP_REST_Block_Directory_Controller::get_items()#54420
  • Mock remote request for unknown 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 in WP_REST_Plugins_Controller::create_item()#54420
  • Restore the 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. URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org for browserify-aes – #54337
  • Update all 3rd party 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/ actions to the latest versions – #53363
  • Change default GitHub branchbranch A 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 trunktrunk A directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision.#54399
  • Update qUnit test fixtures after [52128]#54336

Bundled Theme

  • Display required text field in core themes – #54392
  • Import Twenty Twenty-Two, the new default theme for WordPress 5.9 – #54318
  • Twenty Eleven: Improve comment form styling for required fields – #54408
  • Twenty Nineteen: Apply coding standards fix from running composer format#54392
  • Twenty Twenty-One: Add privacy policy link to footer – #53445
  • Twenty Twenty-One: Correct default image alignment in the editor – #53809
  • Twenty Twenty-One: Prevent printing skip link focus fix when SCRIPT_DEBUG is enabled – #54429
  • Twenty Twenty-Two: Import the assets directory from GitHub – #52081
  • Twenty Twenty-Two: Import the latest changes from GitHub – #54318

Coding Standards

  • Minor alignment fix after [52058]#52058
  • PHP Code style errors – #43700
  • PHP Code style errors – #43700
  • Rename the $gzData argument to $gz_data in WP_Http_Encoding::compatible_gzinflate()#53359
  • Revert accidental image changes in [52171]#54168
  • Revert unrelated change to wp_send_user_request()#43700
  • Use strict comparison in wp-admin/includes/ms.php#47422

Comments

  • Don’t output “cancel comment reply link” if comments aren’t threaded – #37267
  • Use get_comment_author() to retrieve the comment author name in get_comment_reply_link()#53678

Database

  • WPDB: Capture error in wpdb::$last_error when insert fails instead of silently failing for 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. data or value too long – #37267

Docs

  • Add missing documentation for the $javascript parameter of the wp_inline_script_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.#53399
  • Avoid using “CPT” instead of “custom post typeCustom Post Type WordPress can hold and display many different types of content. A single item of such a content is generally called a post, although post is also a specific post type. Custom Post Types gives your site the ability to have templated posts, to simplify the concept.” – #53399, #54335, #54336
  • List the expected return type first in a few functions – #53399

Editor

  • Update SVNSVN Subversion, the popular version control system (VCS) by the Apache project, used by WordPress to manage changes to its codebase. props to ignore new asset files – #54337, #53361
  • Update SVN props to ignore new asset files – #54337, #53361
  • Add documentation for the $block_editor_context parameter of the block_editor_rest_api_preload_paths hook – #52920, #53399
  • Site Editor and PHP changes from 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/ 10.1 – 11.9 – #54337
  • Site Editor: Load as full screen by default – #54337
  • Add Navigation Area infrastructure – #54337
  • Add block theme infrastructure – #54335
  • Add get_query_pagination_arrow function to core
  • Add public functions for interacting with global styles & settings – #54336
  • Fix fatal call to add_query_args() – #54337
  • Fix how the Site Editor is linked to – #54337
  • Fix incorrect access of ID field – #54337
  • Global Styles Rest endpoints – #54336
  • Global styles user content escaping – #54336
  • Load iframed assets in Site Editor – #54337
  • Update wordpress packages – #54337
  • Fix Linting error affecting trunk
  • Update wordpress packages – #54337
  • Update wordpress packages – #54337
  • Update block-theme-pl_PL.mo file. – #54336

Embeds

  • Conditionally enqueue wp-embed only if needed and send ready message in case script loads after post embed windows – #44632, #44306
  • Fix inclusion of wp-embed-template script and style when SCRIPT_DEBUG is disabled – #44632
  • Fix parsing of post embeds in wp_filter_oembed_result() by appending wp-embed script instead of prepending it in get_post_embed_html()#44632

External Libraries

  • Update the regenerator-runtime package to version 0.13.9#54027
  • Update ‘reactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/.’ and ‘react-dom’ – #54337

General

  • Add “noopener” to wp_list_bookmarks() output – #53839
  • General: Convert wp_list_filter() into a wrapper for wp_filter_object_list()#53988
  • General: Minor fixes to Global Style related code – #54336

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

  • Ensure value returned from 'http_allowed_safe_ports' is an array to avoid PHP 8+ TypeError fatal error – #54331
  • Introduce 'http_allowed_safe_ports' filter in wp_http_validate_url()#54331

Internationalization

  • Add language switcher on login/registration screens – #43700
  • Add missing translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. wrapper for the Global Styles post type description – #54336

Login and Registration

  • Fix failing test for “email already exists” registration error improvement – #53631
  • Improve “email already exists” registration error message – #53631
  • Improve messaging for invalid log-out nonces – #52600
  • Pass $errors parameter to registration_redirect filter – #53992
  • Wrap long usernames in login error message – #37617

Mail

  • Add wp_mail_succeeded hook to wp_mail#53826

Media

  • Add “webp” extension to wp.media.controller.Library isImageAttachment#53917
  • Change upload button to a file input for better e2e targeting – #54168
  • Featured imageFeatured image A featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts. modal loads only selected image – #42937
  • Featured image modal loads only selected image – #53765
  • Refine the heuristics to exclude certain images and iframes from being lazy-loaded to improve performance – #53675, #50425
  • Revert media uploader input change in [52059]#54168, #54411
  • Add audible notice on menu item add or remove – #53840

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

  • Correct docs for $_meta_value parameter in xxx_{$meta_type}_meta 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.#53102

Posts, Post Types

  • Add $old_status parameter to {$new_status}_{$post->post_type} action – #36180
  • Mark the wp_global_styles post type as _builtin#54336
  • Remove gutenberg text domain from post type strings – #54336, #54337
  • Update _edit_last meta when posts are edited in bulk – #42446

Quick/Bulk Edit

  • Disable auto-correct for slugs – #50499

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 /wp/v2/block-navigation-areas endpoint – #54393
  • Add batch support for posts and terms controllers – #53063
  • Expose the site icon in the REST API index – #52321
  • Introduce Menu management endpoints – #40878
  • Regenerate wp-api-generated.js after [52068]#53063
  • Remove experimental block menu item types – #40878

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.

  • Introduce wp_get_post_revisions_url() to get URL for editing revisions – #39062

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.

  • Allow get_*_*_link() and edit_term_link() functions to accept a term ID, WP_Term, or term object – #50225
  • Change some static strings to registration labels – #43060
  • Clarify the taxonomy labels for customizing the field descriptions on Edit Tags screen: – #43060
  • Display update notices when adding terms – #42937
  • Document that the get_terms filter can have null for $taxonomies#54222

Template

  • Fix “undefined index: 00” when archive month query is empty in wp_title()#31521

Themes

  • Avoid fatal error loading adminadmin (and super admin) styles when SCRIPT_DEBUG is false#54401, #54336
  • Check both parent and child themes for a theme.json file – #54401
  • Force a scrollbar on the Themes page to prevent visual shake on hover – #53478
  • Twenty Twenty-Two is now the default theme – #54318
  • Update theme.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. classes for WordPress 5.9 – #54336
  • Hide Customize from admin bar when using a block theme – #54337

Upgrade/Install

  • Deactivate the Gutenberg plugin if its version is 11.8 or lower – #54405
  • Update screen reader text counts in adminbar – #29022

Users

  • Introduce wp_list_users() function – #15145
  • Prevent infinite 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. when using capability checks during determine_current_user on 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#53386

Widgets

  • Use isset() in WP_Widget:: display_callback() to support ArrayIterator and ArrayObject#52728
  • Wraps long 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. titles in classic Widgets screen – #37451

Props

Please note that it was the most prolific week since we restarted the Week in Core blogblog (versus network, site) posts last year!

Thanks to the 204 (!) people who contributed to WordPress Core on Trac last week: @hellofromTonya (28), @audrasjb (21), @sabernhardt (14), @desrosj (11), @sergeybiryukov (11), @costdev (10), @johnbillion (9), @oandregal (8), @spacedmonkey (7), @peterwilsoncc (7), @poena (6), @swissspidy (6), @afercia (6), @youknowriad (6), @noisysocks (5), @davidbaumwald (5), @hellofromtonya (4), @birgire (4), @TimothyBlynJacobs (4), @SergeyBiryukov (4), @mukesh27 (3), @Mamaduka (3), @adamsilverstein (3), @antonvlasenko (3), @aristath (3), @pento (3), @dd32 (3), @chaion07 (3), @westonruter (3), @jorbin (3), @TobiasBg (2), @chrisvanpatten (2), @joedolson (2), @soean (2), @dilipbheda (2), @manishamakhija (2), @kjellr (2), @garrett-eclipse (2), @flixos90 (2), @kafleg (2), @Clorith (2), @dlh (2), @Boniu91 (2), @justinahinon (2), @ryelle (2), @ocean90 (2), @mte90 (2), @hareesh-pillai (2), @jrf (2), @webcommsat (2), @drewapicture (2), @tobifjellner (2), @bgardner (1), @rviscomi (1), @sourav926 (1), @jonoaldersonwp (1), @azaozz (1), @briceduclos (1), @colorful-tones (1), @tweetythierry (1), @pbearne (1), @sebastianpisula (1), @aaroncampbell (1), @kapilpaul (1), @xknown (1), @chriscct7 (1), @donmhico (1), @gziolo (1), @malthert (1), @greenshady (1), @nacin (1), @rohan013 (1), @bernhard-reiter (1), @ntsekouras (1), @tw2113 (1), @Nikschavan (1), @keyur5 (1), @paaljoachim (1), @jdy68 (1), @dgwyer (1), @almendron (1), @kallookoo (1), @zieladam (1), @palmiak (1), @andraganescu (1), @dingo_d (1), @isabel_brison (1), @utz119 (1), @kadamwhite (1), @scruffian (1), @NateWr (1), @schlessera (1), @Spacedmonkey (1), @ribaricplusplus (1), @talldanwp (1), @wpscholar (1), @pgking (1), @andynick (1), @richtabor (1), @kraftbj (1), @dimadin (1), @gregrickaby (1), @ellenbauer (1), @jffng (1), @dansoschin (1), @karmatosed (1), @littlebigthing (1), @williampatton (1), @onemaggie (1), @matveb (1), @mburridge (1),