Hi Everyone!
It’s that time again: WordPress CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Weekly is here. This is a catchup post and covers all commits since the last post up until 11/9/2014.
First, a couple quick notes!
- A large number of 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. changes, listed below, continue the Taxonomy Roadmap.
- There were a flurry of commits from @wonderboymusic with additional Scrutinizer cleanup, visible at #30224.
- A huge pass at 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. updates and speed optimization landed, primarily from @boonebgorges, @jeremyfelt, and @jorbin. Full details in the log on Trac.
- Just outside of the scope of this post, the first pass at the Focus feature plugin landed, so go test it out!
Taxonomies
- Do not create shared taxonomy terms. [30240] #21950; See #5809.
- Split shared taxonomy terms during term update. [30238] [30239] [30241] #5809
- Don’t force
child_of=0for non-hierarchical taxonomies inget_terms(). [30265] #30275 - In
get_adjacent_post(),$excluded_termsshould checkterm_idrather thanterm_taxonom_id. [30263] #29663, #22112. - Allow
resource_typeto be specified inget_ancestors(). Being explicit about resource type (taxonomyvspost_type) allows for the proper resolution of conflicts when ataxonomyandpost_typeshare a slug. [30141] #15029 - In
wp_insert_term(), clean up accidental duplicate terms after insert. [30238] See #22023, #5809. - Add some unit tests for
is_object_in_term(). These tests check a number of the ways that different kinds of values for$terms(integers that matchterm_id, strings that matchterm_idornameor slug) are handled. [30204] #29467 - In
in_object_in_term(), only check numeric string values againstterm_id. [30205] #29467 - Introduce
term_templateparam toget_the_taxonomies()to allow theme and 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. authors to specify the formatting on term links as they are parsed into the taxonomy list. [30209] See #27238. - Allow duplicate slugs across different post types. [30158] #18962
- In
get_terms(), do not overridehierarchicalandpad_countwhenparentis present. The previous behavior resulted in descendant terms being improperly excluded from the results when passing aparent, even whenhierarchicalhad been set totrue. [30107] #29815 - Clean up
get_term_by()caching, fix cache key/group modification that was missed in [30073], and update unit tests. [30108] #21760
Twenty Fifteen
- Use new core navigation tags. [30216] #30189
- Support for
title-tag. [30097] #30146 - Improve support for customizerCustomizer 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.. [30274] [30275] #29988; [30230] #30164 #29980; [30272] #30165
- Improve 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) by clarifying link context #30108 [30208], adding accessible alt text for post thumbnail links. [30231] #30076, and using continue reading links for auto-generated excerpts [30237] #30135.
- Prevent a flash of visible sub menus before scripts load. [30211] #30056.
- Detach widgets from the 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. in mobile views. [30243] #30252
- Improve Styles for playlists [30213] [30269] #30163, user-selected custom colors [30221] #30234, and image alignment for RTL [30222] #30239, and body class for page templates [30100] #23470.
- Make sure that the edit link will always be right of its icon. [30215] #30171
- Add a fallback icon for social links where we don’t have an icon. [30212] #30148
- Use the new archive template tags and make archive template titling simpler. [30236] #30246
Database
- Bump
db_versionand add upgrade routine for schema change in [30056]. [30121] [30134] #22023 - WPDB’s
__get()function should perform strict comparisons against member names. [30292]
RevisionsRevisions 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.
- Allow revision Backbone classes to be used on pages other than revision.php. [30128] #30221
- Add a single responsibility function for outputting Revisions JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. templates:
wp_print_revision_templates(). Use it inwp-admin/revision.php. [30129] #30220 - Revisions modules should not rely on global settings; only pass in global settings on init, this allows the classes to be used agnostically elsewhere. [30131] #30219
Metadata
- Pass all updated 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. IDs to filters in
update_metadata(). [30140] #11683 - Unserialize
get_metadata()results whenkeyis omitted. [30115] #15030
Queries
- Improvements to
WP_User_Query[30094] #23849, #27026 andWP_Comment_Query[30098] #12668. - Introduced
dayofweek_isotime param forWP_Date_Query. [30142] #28063
Adminadmin (and super admin)
- Display error message when Media Library upload fails. [30156] [30177] #29891
- Delete
admin_created_user_subject()rather than deprecate. As it was never used as anything more than a callback to a 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. before the MU merge, and is only available inuser-new.phpin 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, it is safe to remove this function entirely. [30176] #29915
Customizer
- Improve/introduce Customizer JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser.
https://www.javascript.com models for Controls, Sections, and Panels, along with a reference. [30102] see #28032, #28579, #28580, #28650, #28709, #29758. Fixes #29529. - Improve
ColorControl‘swpColorPickerto update UIUI User interface based on setting changes. Update Twenty Fifteen’scolorSchemecontrol to properly interact with the 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., usingwp.customize.control(). [30126] #30031 - Add stable sorting for panels, sections and controls in JS. Improve sorting in PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher. [30214] #30225
- Bind
inputandpropertychangeevents for range input types. [30219] #30223 - Twenty Fourteen: Make featured content in Customizer contextual to the front page. [30143] #29578
Templates
- Introduce new template functions for archive titles and descriptions: [30223] #21995
get_the_archive_title()andthe_archive_title()for returning/displaying the title of the current term, date, post type, post format, or author archive.get_the_archive_description()andthe_archive_description()for returning/displaying the description associated with the current term archive.
- In
get_page_children(), only check$page->ancestorsonce to avoid duplicates when the function recurses. Adds an argument,$ancestors. [30246] #18962 - Allow
get_pages(), withchild_ofpassed to it, to work with interrupted hierarchies. [30159] #18962
Thanks to @afercia, @avryl, @azaozz, @bobbingwide, @boonebgorges, @bradyvercher, @Caspie, @celloexpressions, @dancameron, @davidakennedy, @davidjlaietta, @dikiy_forester, @dlh, @donutz, @DrewAPicture, @ericlewis, @filosofo, @florianziegler, @garyc40, @gcorne, @greuben, @hereswhatidid, @iamtakashi, @iandstewart, @imath, @Jayjdk, @jeremyfelt, @jesin, @joedolson, @johnbillion, @jorbin, @kitchin, @kovshenin, @kraftbj, @kurtpayne, @lancewillett, @landakram, @loushou, @markjaquith, @mattkeys, @mattwiebe, @mboynes, @MikeHansenMe, @mlteal, @mordauk, @morganestes, @nacin, @NikV, @nobinobi, @obenland, @ocean90, @pento, @philiparthurmoore, @realloc, @rmccue, @ryankienstra, @sakinshrestha, @SergeyBiryukov, @slobodanmanic, @TobiasBg, @tollmanz, @tywayne, @voldemortensen, @wedi, @westonruter, and @wonderboymusic for their core contributions!
Revisions covered: [30094] to [30292]. For the complete list of commits to trunktrunk A directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running “trunk”, then you are on the latest revision., check out the log on Trac.
Interested in joining in? Write or test a patch for 4.1.