Week in Core, Apr 12 – Apr 19 2016

Welcome back the latest issue of Week in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress., covering changes [37191-37253]. Here are the highlights:

Ticketticket Created for both bug reports and feature development on the bug tracker. numbers based on trac timeline for the period above.

Code Changes


  • Fix default avatarAvatar 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


  • Allow for ABSPATH to be defined outside of wp-load.php, e.g. in a script loaded via auto_prepend_file. [37207] #26592

Build/Test Tools

  • 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 multisitemultisite 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 networknetwork (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 filterFilter 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


  • Use px instead of in in device preview Merges [37247] to the 4.5 branchbranch 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 UIUI User interface controls in customize.php [37230] #31487
  • Site Icon preview: improve alt attributes and text accessibilityAccessibility 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


  • 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 (categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. and tagtag 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 DocBlockdocblock (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


I18Ni18n 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 headerHeader 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


  • Show the upload form in place rather than sending users to the devoted upload pluginPlugin 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



  • 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



  • 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