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 [37161-37190]. Here are the highlights:
Ticket Created for both bug reports and feature development on the bug tracker. numbers based on trac timeline for the period above.
Note: If you want to help write the next WordPress Core Weekly summary, check out the schedule over at make/docs and get in touch in the #core-weekly-update Slack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. channel.
Code Changes
Accessibility 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)
- Remove redundant title attribute from
wp_star_rating()
. [36092] #35141
- Remove the revisions 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. limit title attribute from the Publish box. [36053] #35029
- Remove title attributes from the updates links on 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 and Themes list tables. [36032] #35167
- Remove title attributes and improve accessibility on the “no-js” Menus screen. [36016] #35134
- Remove title attributes from the Theme browser. [36015] #35140
- Improvements for the Authentication Check modal dialog “Close X”. [36014] #35142
Bootstrap/Load
- In
WP::handle_404()
, make sure $wp_query->post
is a WP_Post
object before cloning it. Merges [35994] to the 4.4 branch 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".. [36064] #35013
Canonical
- Output correct canonical links for paged posts when not using pretty permalinks. [36103] [36096] #34890
Comments
- Return early from
wp_update_comment_count()
if there is not a valid post. [36115] #34977
- Respect approval status when determining comment page count in
comments_template()
.[36041] [36040] #8071, #35068
- When a comment is submitted, ensure the
user_ID
element in the array that’s passed to the preprocess_comment
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. gets populated.[36039] [36038] #34997
Customize
Docs
- Hash notate properties and defaults for the benefit of
$args
parameter documentation for WP_Customize_Control::__construct()
. [36114] #32246
- Correct a funky docblock (phpdoc, xref, inline docs) in
funky_javascript_fix()
. [36111] #32246
- Improve documentation for
wp_admin_css_color()
. [36107] #34857
- Fix typo in a comment in
wp_rand()
. [36102] #35228
- Clarify that
get_post_types()
accepts 'not'
as its $operator
parameter. [36091] #35225
- Clarify that
wp_filter_object_list()
accepts 'not'
as its $operator
parameter. [36090] #35225
- Correct
@return
type for rest_parse_date()
. [36086] #35224
- Correct
@return
type for count_user_posts()
. [36085] #35222
- Miscellaneous docblock code quality tweaks. [36074] #32246
@see
!= @since
. [36073] #32246
- Properly mark the optional
$redirect
, $network_wide
, and $silent
parameters as such in the DocBlock for activate_plugin()
. [36072] #32246
- Add missing
@since
and properly mark the optional $type
parameter as such in the DocBlock for the deprecated get_others_unpublished_posts()
function. Introduced in [5707]. [36071] #32246
- Properly mark the
$exclude_zeros
parameter in the DocBlock for get_editable_user_ids()
as optional. Also [36070] #32246
- Miscellaneous docblock corrections. [36069] #32246
- Fix a typo in the 4.4.0 changlog entry in the
intermediate_image_sizes_advanced
hook doc. [36054] #35190
- Add missing notations for the optional
$tab_index
and $extended
parameters in the DocBlock for the deprecated the_editor()
function. [36033] #32246
- Add missing parameter and return notations to the DocBlock for the deprecated
get_usernumposts()
function. [36030] #32246
- Add documentation to wp-blog (versus network, site)-header.php. [36029] #35161
- Add missing parameter and return notations in the DocBlock for
get_profile()
. [36028] #32246
- Properly mark the
$classname
parameter as optional. [36027] #32246
- Add missing parameter and return notations to the DocBlock for the deprecated
wp_specialchars()
function. [36026] #32246
- Add missing parameter notations and descriptions in the DocBlock for
get_link()
. [36025] #32246
- Add missing parameter and return notations in the DocBlock for the deprecated
_nc()
function. [36024] #32246
- Add a missing summary, parameter, and return descriptiosn to the DocBlock for the deprecated function,
get_linkrating()
. [36023] #32246
- Add a missing notation for the
$gmt_time
parameter in the DocBlock for spawn_cron()
. [36022] #32246
- Add missing DocBlocks for
hash_hmac()
and _hash_hmac()
. Introduced in [18111]. [36021] #32246
- Fix inline comment syntax in
_mb_strlen()
, an internal compat method for mb_strlen()
. [36020] #32246
- Add missing DocBlocks for
mb_strlen()
and _mb_strlen()
. Introduced in [32114]. [36019] #32246
- Fix inline comment syntax in
_mb_substr()
, an internal compat method for mb_substr()
. [36018] #32246
- Add missing DocBlocks for
mb_substr()
and _mb_substr()
. Introduced in [17621]. [36017] #32246
- Add missing parameter and return descriptions to the DocBlocks for
_wp_object_name_sort_cb()
and _wp_object_count_sort_cb()
, both uasort()
callbacks. [36013] #32246
- Add a missing notation for the
$context
parameter in the DocBlock for _nx_noop()
. [36012] #32246
- Fix the syntax for the
get_previous_post_link()
DocBlock to ensure it’s read and parsed as such instead of as a multi-line comment. [36011] #32246
- Add a missing summary, description, and
@since
version to the DocBlock for wp_redirect_admin_locations()
. Introduced in [19880]. [36010] #32246
- Add a missing notation for the
$bookmark_id
parameter in the DocBlock for clean_bookmark_cache()
. [36009] #32246
- Fix copy/paste error in
wp_remote_retrieve_cookies()
description. [36002] #35157
Editor
- remove the format_for_editor filter from
the_editor_content
after it runs as the next editor instance on the same page may not need it. [36062] #28403
Embeds
- Remove RDIO from oEmbed providers RDIO is shutting down. ?https://www.rdio.com/farewell/ [36066] [36007] #35152
- Don’t show embed discovery link on a static front page A WordPress website can have a dynamic blog-like front page, or a “static front page” which is used to show customized content. Typically this is the first page you see when you visit a site url, like wordpress.org for example.. [36060] [36059] #35194
External Libraries
Formatting
- Allow
map_deep()
to work with object properties containing a reference.[36101] [36100] #22300, #35058
- Transform
&
into &
in tag 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.) attributes. [36037][36036] #35008
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.
- In
wp_maybe_decline_date()
, bail early if translation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. functions are not available, e.g. in SHORTINIT
mode. Merges [35880] to the 4.4 branch. [36063] #34967
Import
Login
Mail
- Upgrade PHPMailer from 5.2.10 to 5.2.14. The full list of changes is available here: ?https://github.com/PHPMailer/PHPMailer/compare/v5.2.10…v5.2.14 [36083] #35212
Media
- When creating
srcset
do not exclude the image size which is in the src
attribute even when it is larger than max_srcset_image_width
. [36110] #35108
- Revert [35804]. This change has unintended side effects, notably that media URLs in the admin (and super admin) area now unexpectedly use the
https
scheme. [36061] #13941, #35120
- Fix calculations when determining whether to include particular image file in
srcset
. [36031] #34955
Menus
- Avoid a PHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher Notice when a menu contains a now unregistered post type archive. [36095] #34449
- Bring back line break between menu items. Reverts [34321].[36082] [36081] #35107
- Avoid a PHP notice when trying to access the
post_parent
property of hierarchical post type nav menu items. Merges [35876] to the 4.4 branch. [36044] #34446
Permalinks
Posts/Post Types
- Improve post-filter sanitization of excluded terms in
get_adjacent_post()
. [36079] #35211
Query
- Re-initialise any dynamically-added public query vars before running the public query vars test. [36051] [36048] #35115
- Introduce a unit test Code written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression. which will fail when new public query vars are introduced without also updating the test. [36046] [36045] #35115
- Remove
title
from the public query vars list. [36035] [36034] #35115
Shortcodes
=
is a reserved character in shortcode 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. names, mark it as such.[36098] [36097] #34939
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.
Tests
- After [36100] use an object style which is compatible with PHP5
get_object_vars()
. [36118] [36117] #35058
- When testing the
utf8mb4
charset, ensure that the current 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/. server has utf8mb4
support. [36116] #35249
- Help Tab Order should be based on the Priority Argument. [36104] [36089] #35215, #33941
- Tests: Use the correct URL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org in some shortcode tests. [36099] #
- Move
get_adjacent_post()
tests to their own file. [36077] #35211
- Use the
default_storage_engine
MySQL option on newer MySQL versions. [36055] #34692
- Correct the public query vars test for the 4.4 branch. [36052] #35115
- Prevent role capability pollution in
Tests_Post_GetPostsByAuthorSql::test_user_has_access_only_to_private_posts_for_certain_post_types()
. [36050] #
- Fix all the things. [36049] #30017, #32394
- Shave a second off the user capability tests by reusing its user fixtures. [36047] #30017, #32394
Themes
- Add
singular
to the list of body classes when viewing a single post object. Adds tests [36112] #35164
- Break
$wp_file_descriptions
array into sections and reorder for consistency and readability. [36088] #35223
- Add
taxonomy.php
, home.php
, front-page.php
, date.php
, and singular.php
to file descriptions. [36087] #35223
Toolbar
- In Comments link, replace title attribute containing the number of pending comments with a screen reader text. [36093] #34895
Twenty Fifteen
- Add left margin for lists inside blockquotes in
editor-style.css
. [36075] #33380
Users
- Don’t continue checking a password reset key, if the hash is empty. This [36084] #33926
- When determining whether to show the reassign content option during user delete, don’t rely upon
WP_Query
as it doesn’t return all forms of content wp_delete_user()
operates on. [36106] [36068] #34993
Widgets
- Remove extra quotes 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. title in
WP_Widget_RSS
, accidentally added in [33814]. Merges [35978] to the 4.4 branch. [36067] #34978
- Add missing closing tag for spinner after [35317]. [36001] #35150
Props
Thanks to @jadpm, @aaroncampbell, @afercia, @ambrosey, @ardathksheyna, @azaozz, @barryceelen, @boluda, @boonebgorges, @danielpataki, @dd32, @diddledan, @DrewAPicture, @ericlewis, @gblsm, @hnle, @igmoweb, @jeff, @jeremyfelt, @joemcgill, @johnbillion, @jorbin, @JPry, @jrchamp, @juanfra, @kiranpotphode, @KrissieV, @kucrut, @marcochiesi, @mark8barnes, @meitar, @morganestes, @mwidmann, @nofearinc, @obenland, @pento, @peterwilsoncc, @rabmalin, @rachelbaker, @ramiy, @salcode, @SergeyBiryukov, @ShinichiN, @skithund, @slushman, @swisssipdy, @swissspidy, @tharsheblows, @TimothyBlynJacobs, @tyxla, @wonderboymusic, @wp-architect, and @yetAnotherDaniel for their contributions!
#4-5, #week-in-core