WordPress Core Weekly

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!

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=0 for non-hierarchical taxonomies in get_terms(). [30265] #30275
  • In get_adjacent_post(), $excluded_terms should check term_id rather than term_taxonom_id. [30263] #29663, #22112.
  • Allow resource_type to be specified in get_ancestors(). Being explicit about resource type (taxonomy vs post_type) allows for the proper resolution of conflicts when a taxonomy and post_type share 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 match term_id, strings that match term_id or name or slug) are handled. [30204] #29467
  • In in_object_in_term(), only check numeric string values against term_id. [30205] #29467
  • Introduce term_template param to get_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 override hierarchical and pad_count when parent is present. The previous behavior resulted in descendant terms being improperly excluded from the results when passing a parent, even when hierarchical had been set to true. [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_version and 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 in wp-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 when key is omitted. [30115] #15030

Queries

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 in user-new.php in 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‘s wpColorPicker to update UIUI User interface based on setting changes. Update Twenty Fifteen’s colorScheme control 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., using wp.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 input and propertychange events 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() and the_archive_title() for returning/displaying the title of the current term, date, post type, post format, or author archive.
    • get_the_archive_description() and the_archive_description() for returning/displaying the description associated with the current term archive.
  • In get_page_children(), only check $page->ancestors once to avoid duplicates when the function recurses. Adds an argument, $ancestors. [30246] #18962
  • Allow get_pages(), with child_of passed 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.

#4-1, #week-in-core