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 [40307-40347]. Here are the highlights:
- 41 commits
- 27 contributors
- 76 tickets created
- 14 tickets reopened
- 65 tickets closed
Ticket Created for both bug reports and feature development on the bug tracker. numbers based on trac timeline for the period above. The following is a summary of commits, organized by component.
Code Changes
Administration
- List Tables: After [38703], [38706], and [40118], adjust the jQuery selector to make the selection of a range of checkboxes work again. [40327] #40056
- Docs: Add description for
$mode
global in WP_MS_Sites_List_Table
and WP_MS_Users_List_Table
. [40310] #40208
- Docs: Add description for
$mode
global in WP_Media_List_Table
and WP_Posts_List_Table
. [40309] #40208
- Docs: Add missing
@global
entry for list table view mode in WP_Screen::render_view_mode()
. [40308] #40208
- Docs: Add missing
@global
entry for list table view mode in wp_ajax_inline_save()
. [40307] #40208
Bundled Theme
- Twenty Seventeen: Declare jQuery as a dependency for
navigation.js
. [40315] #40224
- Twenty Seventeen: Use
esc_attr_e()
for translatable strings in HTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. attributes. [40311] #40216
Cache API 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.
- 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: Remove unused
site-lookup
global cache group. [40347] #38725
- Tests: Add missing global cache groups. [40343] #40283
Customize
- Prevent client-side validation from being cleared when no corresponding server-side validation is present. [40319], [40345] #36944, #39770
- Trailing slash the home nav menu item URL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org in starter content. [40338] #40112
- Fix navigation of site in preview on IE11. [40318], [40335] #38409, #40198
- Harden
site_icon
control template to account for when full
image size is missing. [40314],[40332] #36749, #40010
- Prevent links to
customize.php
from being generated which have query vars from wp_removable_query_args()
present. [40313], [40331] #23367, #32692, #31850
- Improve i18n 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. for strings in hidden 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. area notices. [40330] #33567, #33052, #39087
- Fix selective refresh when customizing the 404 template. [40316] #27355, #40018
- Show notice in Widgets panel when there are additional widget areas not rendered in preview. [40312] #33567, #33052, #39087
Database
- Tests: Use utf8mb4 max index length when creating keys. [40339] #35958
Formatting
- Docs: Correct default value in
@param
entry for the $num_words
parameter of wp_trim_words
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.. [40322] #40248
Login and Registration
- Avoid a potentially incorrect value for the cookie hash on multisite installations that don’t have a value in the
siteurl
network (versus site, blog) option. [40320-40321] #34084, #39497
Networks and Sites
- Multisite: Respect
$_wp_suspend_cache_invalidation
when clearing network and site caches. [40346] #40028
- Multisite: Allow falsy properties to be cached in
site-details
. [40344] #40247
- Tests: Clarify zero path segment tests for
get_network_by_path()
. [40342] #37217
- Multisite: Add
lang_id
support to WP_Site_Query
. [40340] #40196
- Multisite: After [40305], rename
clean_site_details_cache()
method as it’s not really private. [40333] #40063
- Multisite: Add further unit tests for
get_blog_details()
. [40317] #40228, #40180
Posts, Post Types
- Add missing REST 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/. properties to
WP_Post_Type
class. [40329] #39986
REST API
- Tests: Consolidate logic used to skip API fixture generation. [40341] #40041
- Confirm the parent post object of an attachment exists in
WP_REST_Posts_Controller::check_read_permission()
. [40337] #39881
- Add
gmt_offset
and timezone_string
to the base /wp-json
response. [40336] #39854
- Use
get_gmt_from_date()
when preparing a draft post for response. [40324-40325] #40136
Taxonomy 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.
- Add missing REST API properties to
WP_Taxonomy
class. [40328] #39987
Themes
- Fix incorrect annotation for
__clear_multi_author_cache()
function. [40334] #40063, #40262
- Add filter for excluding directories from being scanned for template files. [40326] #38292
Users
- Don’t push the current user’s role to the top of the list in
wp_dropdown_roles()
. [40323] #40162
Thanks to @afercia, @aussieguy123, @bor, @bor0, @caseypatrickdriscoll, @chesio, @clarinetlord, @danielbachhuber, @dd32, @dlh, @flixos90, @GhostToast, @jeremyfelt, @johnbillion, @johnjamesjacoby, @lukasbesch, @michelleweber, @nerrad, @ocean90, @priyankabehera155, @rachelbaker., @redrambles, @sagarkbhatt, @SergeyBiryukov, @swissspidy, and @westonruter for their contributions!
#week-in-core