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 [38456-38570]. 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. The following is a summary of commits, organized by component.
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)
- Improve 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. and Theme Installer initial focus. [38520] #29158, #33228, #27705
- Make links in the Customizer underlined by default. [38503] #37527
Administration
Bootstrap
class-wp-locale.php
needs to be require_once()
-ed. [38496] #37827
- goodnight sweet prince. [38480] #36335
- do not go gentle into that good night r38411, r38412, and parts of r38389. [38470] #36335
- Check that
ini_get_all()
exists before calling it, allows us to work around hosts who disable the function for “security purposes”. Merges [38431] to the 4.6 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".. [38460] #37680
Comments
Customize
- Fix php warning due to
WP_Customize_Manager::prepare_setting_validity_for_js()
incorrectly assuming that WP_Error
will only ever have arrays in its $error_data
. [38513] #37890
- Introduce
paneVisible
state and ensure pane is visible when a construct is expanded (or focused). Fixes #36678. [38492] #27403, #36678
- Fix 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. by re-using the
add_new_item
post type label instead of using a post type name in a generic string. [38479] #34923, #37895
- Use new
$status_code
parameter for wp_send_json_error()
instead of calling status_header()
separately. [38478] #35666, #37897
- Improve handling of active state for dynamically-created controls/sections/panels. [38464] #37270
Database
- Find the correct table names in
DELETE
queries with table aliases [38507] #37660
Docs
- Update the
$message
parameter for _default_wp_die_handler()
to notate that it can also accept a WP_Error
object. [38518] #37770
- Correct
@since
entry for the smilies
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. added in [38504]. [38505] #35905
- Move
term_description()
reference from filter docblock (phpdoc, xref, inline docs) to get_the_archive_description()
function docblock. [38495] #37259
Editor
- fix jumpiness on pressing backspace and delete in the Text editor. Merge of [38426] to the 4.6 branch. [38487] #37690
Embeds
- Clarify some assertion failure messages and correct a test URL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org for Twitter timelines. [38514] #32360
- Update the oEmbed provider test suite. [38512] #32360
Formatting
HTTP 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.
- Handle an edgecase within the URI parsing library included in Requests, where if a double slash exists at the start of the path the URL is passed to cURL malformed. Merge of [38429] to the 4.6 branch. [38485] #37733
- Accept non-string values in cookies, fixing a regression A software bug that breaks or degrades something that previously worked. Regressions are often treated as critical bugs or blockers. Recent regressions may be given higher priorities. A "3.6 regression" would be a bug in 3.6 that worked as intended in 3.5. since 4.5. Merges [38430] to the 4.6 branch. [38461] #37768
HTTP 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.
- Revert changes to
wp_parse_url()
while PHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher 5.2 errors are investigated. [38456] #36356
General
- revert [38386],
functions.php
was probably too tempting for some people to not load by itself. [38469] #36335
- revert [38467],
wp_is_IE()
should not exist. [38468] #37699
- use a new function,
wp_is_IE()
, instead of the $is_IE
global in a number of places. [38467] #37699
- use
get_bloginfo( 'version' )
instead of global $wp_version
in several locations – excluding those locations which reload version.php
mid-flight. [38459] #37699
Help/About
- Remove an outdated help sentence on “My Sites” screen. [38474] #37896
I18N
- Add translator comments for XML-RPC strings with placeholders. [38510] #37792
Login and Registration
- Change login label to
Username or Email Address
for clarity. [38477] #37871
Media
- Sanitize upload filename. [38538] #
Menus
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
- Deprecate
wp_get_network()
. [38515] #37553
- use
get_current_site()
instead of $GLOBALS['current_site']
(stop yelling!) in a few remaining spots. [38458] #37699
- use
get_current_blog_id()
where applicable, in lieu of plucking the $blog_id
global from outer space. [38457] #37699
Post Thumbnails
- Prevent post thumbnail previews from spilling into other images. Merge of [38433] to the 4.6 branch. [38476] #37697
Press This
- don’t check for already-hoisted global in
press-this.php
. [38466] #37699
- in
wp_ajax_press_this_save_post()
and wp_ajax_press_this_add_category()
, don’t check for a global instance. WP_Press_This
is a Controller, but not really a Singleton. This also keeps it from being a pluggable class, which it is right now. [38465] #37699
- in
get_shortcut_link()
, just check a class constant on WP_Press_This
instead of instantiating the object and reading an instance prop. [38462] #37699
Query
- ‘orderby=include’ should support comma-separated lists. [30052] assumed that ‘include’ would be an array. [38500] #37904
- Use
AND
in a SQL query rather than &&
. [38491] #37903
- r38356, you were not long for this world. [38471] #37830
- in
wp_old_slug_redirect()
, use get_query_var()
instead of importing and touching the global $wp_query
directly. [38463] #37699
Role/Capability
- Correct the multisite cap tests after [38521]. See #32394 [38522] #35614, #32394
- Split meta 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. and primitive capabilities in the helper functions in the roles and capability tests so primitive capability tests can be made more accurate. See #32394 [38521] #35614, #32394
- Add two missing meta capabilities to the caps tests. [38482] #32394
Script Loader
- Correct default value for
$src
in wp_enqueue_script()
and wp_enqueue_style()
. [38519] #37770
- Close the
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.) in wp_resource_hints()
. Merge of [38443] and [38447] to the 4.6 branch. [38473] #37800
Shortcodes
Smilies
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.
- Introduce some taxonomy capability tests in preparation for introducing more fine grained capabilities for terms. [38516] #35614
- Introduce
wp_insert_term_data
and wp_update_term_data
filters for altering term data before it is inserted/updated in the database. [38484] #22293
- Correct the function description for
wp_ajax_add_link_category()
. [38490] #37770
- Update various docs for parameters which are now
WP_Term
objects. See #14162 [38489] #37770, #14162
Template
- After [38486], actually use the
$description
variable in get_the_archive_description()
. [38493] #37259
- In
get_the_archive_description()
, add support for author archives. [38486] #37259
Text Changes
- Improve Error messages in XML-RPC [38509] #37792
- Improve the timezone setting description in General Settings. Makes more clear users can set either a city or a UTC timezone offset. [38483] #34789
TinyMCE
- fix toolbars alignment in RTL. Merge of [38349] to the 4.6 branch. [38488] #37760
- change the default font for the vi locale A locale is a combination of language and regional dialect. Usually locales correspond to countries, as is the case with Portuguese (Portugal) and Portuguese (Brazil). Other examples of locales include Canadian English and U.S. English. to the same stack as he_IL. Merge of [38427] to the 4.6 branch. [38472] #37755
Toolbar
Upgrade/Install
- After [37687], fix the number of params passed to the upgrade hooks 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.. Merge of [38415] to the 4.6 branch. [38475] #37731
- Sanitize file name in
File_Upload_Upgrader
. [38524] #
Upload
Users
- After [33766], don’t reset the password when clicking “Show Password” and then “Cancel” on Add New User screen. [38494] #37902, #33419
Pass $profileuser
parameter to user_profile_picture_description
filter on “Edit User” screen. [38481] #37379
Widgets
- Make the Delete/Remove links red. For consistency and accessibility, all the UI User interface controls that perform destructive actions should be red. [38536] #35622, #37016
## Props
Thanks to @afercia, @Akeif, @akibjorklund, @andrewp, @atimmer, @azaozz, @batmoo, @boonebgorges, @celloexpressions, @Chaos, @curdin, @dd32, @deremohan, @dlh, @DrewAPicture, @Engine, @flixos90, @Frank, @fronaldaraujo, @GaryJ, @geminorum, @gitlost, @GrantDerepas, @henrywright, @ibachal, @ideag, @ionutst, @jeremyfelt, @joemcgill, @johnbillion, @johnjamesjacoby, @johnpgreen, @jorbin, @Klein, @lukecavanagh, @monikarao, @mte90, @netweb, @nmt90, @patilswapnilv, @pento, @peterwilsoncc, @PieWP, @Presskopp, @ramiy, @Rarst, @sayedwp, @scrappy@…, @SergeyBiryukov, @smerriman, @swissspidy, @TimothyBlynJacobs, @turtlepod, @westonruter, and @wonderboymusic for their contributions!
#4-1, #week-in-core