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 [37191-37253]. 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.
Code Changes
Administration
- Fix default avatar An avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name. handling in Settings -> Discussion. [37227] #34744
Bootstrap/Load
- Allow for
ABSPATH
to be defined outside of wp-load.php
, e.g. in a script loaded via auto_prepend_file
. [37207] #26592
- Add test for multiple site path segments in bootstrap This [37241] #36566
- Add missing params to doc blocks. Simplifies parameter names in
test_get_network_by_path()
[37239] #36566
- Use a data provider to test 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’s bootstrap. Also helps to get things in order before the introduction of a more testable multisite bootstrap function in #34941. [37238] #34941, #36566
- Use a data provider in
get_site_by_path()
tests [37237] #36566, #34941
- Use a data provider to test
get_network_by_path()
[37236] #36566, #34941
- Share test fixtures in multisite bootstrap tests [37234] #36566, #34941
- Improve
get_blog_count()
tests [37233] #36566
- Improvements to /post/query test class. [37224] #
- Run image tasks only if there are changes [37211] #36528
- Don’t run the
build
task twice in grunt prerelease
(it already runs via the precommit:js
task). [37206] #36489
- Run network (versus site, blog) option tests as single and multisite [37222] #36552
- Update grunt-contrib-uglify from ~0.10.0 to ~1.0.1 [37212] #36520
- Add parameters to
edit_comment_link()
to allow specifying a Comment and link class. [37215] #36538
- Allow for default comment form action,
/wp-comments-post.php
, to be changed via the comment_form_defaults
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.. [37208] #26841
Customize
- Use
px
instead of in
in device preview Merges [37247] to the 4.5 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". [37247-37248] #36457
- Improve UI User interface controls in
customize.php
[37230] #31487
- Site Icon preview: improve alt attributes and text 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). [37229] #36562
- Remove the ‘appearance’ reference from permission error messages added in [33857], [33889], and [33902]. [37197] #36466
Docs
- Properly notate optional parameters as such in a variety of DocBlocks in wp-includes/link-template.php. [37252] #30406
- Fix typo in a comment in
wp-admin/js/postbox.js
. [37195] #36349
- Fix typo in
get_image_send_to_editor()
description. [37194] #36349
- Fix typo in
wp_update_theme()
description. [37193] #36349
- Clarify that
is_tax()
and WP_Query::is_tax()
return false for built-in taxonomies (category The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. and 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.) archives). [37235] #36331
- Correct description for
override_load_textdomain
and override_unload_textdomain
filters. [37214] #36537
- Use third-person singular verbs in DocBlock (phpdoc, xref, inline docs) and hook doc summaries in wp-includes/link-template.php. [37213] #30406
- Fix typo in
wp_cache_switch_to_blog()
and WP_Object_Cache::switch_to_blog()
description. [37216] #36548
- Reference the correct variable in
WP_Ajax_UnitTestCase::_handleAjax()
documentation. [37199] #36522
- Clarify possible types passed to the
themes_api_result
filter. [37209] #32246
Export
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.
- Remove tags from translatable string in
wp-admin/options-writing.php
. [37198] #36249
- Add translator comment for a string with a placeholder added in [36806]. [37201] #36493
Login and Registration
- Add
login_header
action that fires in the login page header 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. after the body tag is opened and complements login_footer
. [37243] #22139
- Add noindexing to the default
wp_die()
handler to avoid unnecessary crawl errors in web search engines. [37210] #34401
- Resolve fatal error on resize with ImageMagick < 6.4.6 Merge of [37192] to the 4.5 branch. Fixes #36501. [37245] #36501
- Change the close “X” in the Media “Attach to existing content” modal in a button. [37231] #36554
- Resolve fatal error on resize with ImageMagick < 6.4.6 Fixes #36501. [37192] #36501
- Make
$current_site
and $current_blog
explicitly global. [37226] #34941
- Fire a
clean_site_cache
action when a site’s cache is cleared [37204] #36203
- Remove theme from network allowed themes when deleted [37203] #34182
- Introduce
WP_Theme
methods to network enable/disable themes. [37202] #30594
- Relocate
revoke_super_admin()
and grant_super_admin()
[37200] #21788
- Do not set network options to autoload in single site [37223] #22846
Plugins
- Show the upload form in place rather than sending users to the devoted upload 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 page. [37221] #35429
- Properly wrap long tab names to a second line in plugin details modal. [37218] #33221
Posts, Post Types
- Pass thumbnail ID to the
admin_post_thumbnail_html
filter. [37196] #36443
- In
sanitize_post_field()
, only run ‘attribute’ or ‘js’ escaping when necessary. [37220] #34900
Query
Themes
- Adding the
singular
class per default to the list of body classes is breaking the layout of Twenty Eleven and other themes. Merge of [37249] to the 4.5 branch. [37249-37250] #36510
- After [37217], add other embed templates to file descriptions. [37232] #34561, #34561
- Account for longer strings in Theme Details bar on Themes screen. [37219] #27939
- Add
embed.php
to file descriptions. [37217] #36551
- Fix single theme modal on collapsed menu. [37205] #36504
TinyMCE
XML-RPC
- Use a strict comparison to ensure that a non-numerically-indexed array is not incorrectly matched as a numeric array. [37244] #36586
Thanks to @afercia, @azaozz, @barry, @bobbingwide, @boonebgorges, @borkweb, @celloexpressions, @Cheffheid, @Chouby, @christophherr, @cliffseal, @dd32, @dimadin, @DrewAPicture, @ericlewis, @flixos90, @Frozzare, @gblsm, @hardeepasrani, @henrywright, @iamfriendly, @igmoweb, @Ipstenu, @iseulde, @jeremyfelt, @joedolson, @johnbillion, @johnjamesjacoby, @jorbin, @meitar, @michaelarestad, @mikeschroder, @netweb, @obenland, @ocean90, @postpostmodern, @rachelbaker, @ramiy, @rodrigosprimo, @SergeyBiryukov, @shahpranaf, @spacedmonkey, @swissspidy, @TacoVerdo, @tfrommen, @theMikeD, @thomaswm, @voldemortensen, and @yoavf for their contributions!
#4-6, #week-in-core