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 [39759-39923]. Here are the highlights:
- 165 commits
- 44 contributors
- 87 tickets created
- 9 tickets reopened
- 83 tickets closed
Ticketticket 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: Pass the
$whichparameter torestrict_manage_postsfilterFilter 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. instance inWP_Media_List_Table, missed in [37422]. [39917] #38772 - Improve tab character width in Plugins and Themes editor. [39897] #38684
Build/Test Tools
- Add
assertNotFalse()method toWP_UnitTestCaseand use it where appropriate. [39919] #39219 - Correctly reference function names in
@coversentries. [39918] #39235 - After [29858], update
.jsintrcto use spaces, not tabs. [39898] #39359
Bundled Theme
- Twenty Seventeen: Remove duplicate
global $postdeclaration intwentyseventeen_front_page_section(). [39909] #39590 - Twenty Seventeen: Correct
@paramentries fortwentyseventeen_custom_colors_cssfilter. [39901] #39575 - Twenty Seventeen: Remove extra asterisk from a translator comment so the comment could be parsed correctly. [39894] #39116
Cache APIAPI 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.
Database
Editor
External Libraries
- Update PHPMailer to 5.2.22. [39759], [39783], [39785-39794] #37210
Formatting
- Tests:
wpautop()should not add extrabefore. [39914] #39307 - Fix
wpautop()to stop adding paragraph tags around “. [39912] #39307
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.
Media
Misc
- Post-4.7.1 version bump for 4.7 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”.. [39883]
- Only show major version in readme.htmlHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. for 4.7 branch [39871]
- Media: Fix exif_imagetype check in wp_get_image_mime [39851-39861]
- Tests: Replace broken codeispoetry.png file. [39848-39849]
- Use plural string ‘Maintenance and Security Releases’ since we have two now [39847]
- REST APIREST 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/: Change which users are shown in the users endpoint. [39844] - Media: Improve image filetype checking. [39832-39842]
- Updates: Translate 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. data on the Updates screen. [39808]
- Themes: Fix markup for theme name fallbacks. [39807]
- 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: Use
wp_rand()in signup key creation. [39795-39806] - Mail: Disable wp-mail.php when
mailserver_urlis mail.example.com. [39772-39782], [39784]
Plugins
- Docs: Use a consistent description for
$pluginparameter in various plugin API functions. [39890] #36333 - Docs: Improve the DocBlockdocblock (phpdoc, xref, inline docs) for
validate_plugin(). [39889] #36333
Posts, Post Types
- Increase the height of post slug input to prevent certain characters from being cut in Firefox on Windows. [39905] #28084
REST API
- Correctly serve the index with PATH_INFO [39923] #39432
- Allow shortcircuiting rest_pre_insert_comment [39922] #39578
- Improve test coverage of single user endpoint for public data. [39913] #38878, #39546
- Update unit tests to account for the string changes in [39896]. [39899] #39054
- Improve error messages for number relational validation. [39896] #39054
- Change which users are shown in the users endpoint. [39843] #38878
TaxonomyTaxonomy 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.
- Docs: In
wp_set_object_terms(), add a note that passing an empty value as$termsargument will remove all related terms. [39893] #36690
Text Changes
- Taxonomy: Add an explanation for “Parent” dropdown for hierarchical custom taxonomies. [39895] #23447
Themes
- Add a unit testunit 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. for
get_theme_feature_list()to make sure that the list of theme features pulled from the WordPress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ API returns the expected data structure. [39906] #28121 - Docs: After [37083], change “HEX format” to “3- or 6-digit hexadecimal form” for clarity. [39888] #36336
- Use curly braces for variables inside strings in `get_page_template() to explicitly specify the end of the variable name. [39884] #38625
TinyMCE
- Strip browser inserted <u> and <font> tags from inside links when copying and pasting in IE and Edge. [39916] #39570
- Ensure the inline toolbar is shown and properly positioned when there are several wpview blocks in the editor and the user selects one after the other. [39910] #38849
- Prevent the inline toolbar from appearing on partially selected wpview nodes. This can happen when HTML is initially loaded in the editor and wpview is the first node, or sometimes on repeatedly pasting the same wpview. [39904] #38849
- When inserting a wpview, place the caret after is so the user can continue typing without interruption. [39903] #39337
- Improve removal of spaces from empty paragraphs when loading HTML in the editor. [39902] #39437
Upload
- Media: Fix exif_imagetype check in wp_get_image_mime [39850] #11946
- Media: Improve image filetype checking. [39831] #11946
Users
- Introduce
signup_site_metaandsignup_user_metafor filtering signup metadata inwpmu_signup_blog()andwpmu_signup_user(), respectively. [39920] #39223 - User Query: Cast
$user_totalas anint. [39915] #39297 - I18N: Reference correct placeholder in a translator comment added in [30333]. [39908] #30264
- Display the name of user being edited on Edit User screen. [39907] #28182
- Docs: Make
$metaparameter description in multisite signup and registration functions more consistent. [39887] #38781 - In
wpmu_signup_blog()andwpmu_signup_user(), pass unserialized signup metaMeta 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. data toafter_signup_siteandafter_signup_userfilters introduced in [34112], to match the documented value. [39886] #38781
Widgets
- In
unregister_sidebar(), rename the$nameparameter to$sidebar_idfor consistency withis_registered_sidebar(). [39892] #35147 - Add nonce for widgetWidget 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. 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) mode. [39760-39771] #23328
Thanks to @aaroncampbell, @afercia, @afzalmultani, @Ankit K Gupta, @azaozz, @barryceelen, @ccprog, @dd32, @diddledan, @DrewAPicture, @dspilka, @F J Kaiser, @gitlost, @iandunn, @iseulde, @ixkaito, @jackreichert, @jblz, @jeremyfelt, @jnylen0, @joemcgill, @johnjamesjacoby, @kuck1u, @MaximeCulea, @Mista-Flo, @netweb, @ocean90, @pavelevap, @pbearne, @pento, @peterwilsoncc, @Presskopp, @rachelbaker, @raggedrobins, @rmccue, @runciters, @seanchayes, @SergeyBiryukov, @Soean, @swissspidy, @theMikeD, @tmatsuur, @vortfu, and @wpsmith for their contributions!