Welcome back the latest issue of Week in Core Core is the set of software required to run WordPress. The Core Development Team builds WordPress., covering changes [37314-37354]. Here are the highlights:
- 40 commits
- 33 contributors
- 78 tickets created
- 8 tickets reopened
- 70 tickets closed
Ticket Created for both bug reports and feature development on the bug tracker. numbers based on trac timeline for the period above.
Code Changes
Administration
- improve the Star Ratings hiding empty elements for assistive technologies. [37330] #36725
- This patch A special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing. assigns the background color to
body
instead of the html
element. [37321] #35314
Build/Test Tools
- Include
npm prune
in the before_script
command. npm prune
removes extraneous packages so the cache contains only current modules. [37340] #36490
- Document
WP_UnitTestCase->go_to()
[37319] #36679
Comments
date_query
should be a property on WP_Comment_Query
objects, nstead of a local variable. [37354] #36741
- Realign parameter documentation in the DocBlocks for
comment_author_email_link()
and get_comment_author_email_link()
. Also adds a missing return description for get_comment_author_email_link()
. [37349] #36571
- Adjust
comment_author_email_link()
and get_comment_author_email_link()
to each accept a new optional fourth parameter, $comment
, which enables overriding the $comment
global. Adds tests. [37348] #36571
- Display the comment counts in
wp_dashboard_right_now()
in the rare initial condition when there are 0 approved comments and only pending comments, so the AJAX count update could work. [37335] #35519
- Pass
$comment
to comment_text()
in Walker_Comment::comment()
instead of using a function which can skip the cache. [37325] #35433
Customize
- Handle filtering
sidebars_widgets
when the underlying option is non-existent. See #36389. Fixes #36660. [37352] #36389, #36660
- Pass
WP_Customize_Setting
instance as second argument to customize_value_{$id_base}
filter 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.. [37350] #36452
- Allow Esc key to collapse the currently-expanded panel, section (or control). [37347] #22237
- Ensure settings modified during an open save request remain dirty when save request completes. [37346] #32941
- Increase the target size of the expand/collapse button in the customizer 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.. [37341] #36093
- Don’t auto-close the customizer when a new theme is activated. [37339] #35320
- Remove format placeholders from widget 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. templates and selectors, fixing a jQuery selector syntax error and the broken highlight/shift-click behaviors. [37322] #36473
Database
- Set MySQL 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/. connection collation. [37320] #36649
Docs
- Improve the class DocBlock (phpdoc, xref, inline docs) for
WP_Widget
to clarify which methods “should” vs “must” be overridden by extending sub-classes. [37343] #36703
- Remove inline
@see
tags from function, class, and method references in inline docs (phpdoc, docblock, xref). [37342] #32246
- Add backtick escaping for two inline code samples in docs. [37338] #32246
- Standardize on using
::
for Class::method()
references in WP_Customize_Control
inline docs. [37337] #32246
- Document the
@return
value of wp_add_trashed_suffix_to_post_name_for_post()
. [37334] #36728
Links
- Rename the
$link_id
parameter in get_link_to_edit()
to $link
to better reflect that it can accept a link ID or object. [37353] #36736
- Clarify documentation for the
$link_id
parameter to mention that it accepts either an integer or object. [37351] #36736
Plugins
- In
plugin_basename()
normalize the file path before unresolving symlinks. [37332] #29154
- In
uninstall_plugin()
pass the plugin 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 file to wp_register_plugin_realpath()
. [37331] #36709
Posts
- Allow
get_page_uri()
to be called without a $page argument. [37345] #26284
Query
Tests
- Ensure that image sizes are indeed removed when errors are raised before assertions in
Tests_Media
. [37328] #36588
- Ensure that the GD absrtraction is used for GD unit tests for Images. [37327] #36588
- Remove debug cruft left over from [34816]. [37344] #17078
- Reduce unnecessary count in
create_many()
in multisite 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 user tests. [37318] #36566
Themes
Users
Widgets
- Provide PHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher 5.2 fallback for
spl_object_hash()
if disabled in logic for registering and unregistering pre-instantiated widgets. [37333] #28216
- Allow
WP_Widget
subclass instances (objects) to be registered/unregistered in addition to WP_Widget
subclass names (strings). [37329] #35990, #28216
- When the Inactive Widgets section is hidden also hide the “Clear Inactive Widgets” button description text. [37323] #35592
Props
Thanks to @afercia, @andy, @boonebgorges, @celloexpressions, @chandrapatel, @DrewAPicture, @ericlewis, @flixos90, @flyingdr, @Frank-Klein, @jdgrimes, @jeremyfelt, @jsternberg, @kjbenk, @martinkrcho, @mdwheele, @michaelarestad, @netweb, @ocean90, @PeterRKnight, @pollett, @purcebr, @r-a-y, @rachelbaker, @SergeyBiryukov, @Shelob9, @tloureiro, @voldemortensen, @vortfu, @websupporter, @welcher, @westonruter, and @wonderboymusic for their contributions!
#4-6, #week-in-core