WordPress/wp-content/themes/twentyfourteen
Pascal Birchler a225165010 Role/Capability: Add support for capability queries in WP_User_Query.
Similar to the existing `role`/`role__in`/`role__not_in` query arguments, this adds support for three new query arguments in `WP_User_Query`:

* `capability` 
* `capability__in`
* `capability__not_in`

These can be used to fetch users with (or without) a specific set of capabilities, for example to get all users
with the capability to edit a certain post type.

Under the hood, this will check all existing roles on the site and perform a `LIKE` query against the `capabilities` user meta field to find:

* all users with a role that has this capability
* all users with the capability being assigned directly

Note: In WordPress, not all capabilities are stored in the database. Capabilities can also be modified using filters like `map_meta_cap`. These new query arguments do NOT work for such capabilities.

The prime use case for capability queries is to get all "authors", i.e. users with the capability to edit a certain post type.

Until now, `'who' => 'authors'` was used for this, which relies on user levels. However, user levels were deprecated a long time ago and thus never added to custom roles. This led to constant frustration due to users with custom roles missing from places like author dropdowns.

This updates any usage of `'who' => 'authors'` in core to use capability queries instead.

Subsequently, `'who' => 'authors'` queries are being **deprecated** in favor of these new query arguments.

Also adds a new `capabilities` parameter (mapping to `capability__in` in `WP_User_Query`) to the REST API users controller.

Also updates `twentyfourteen_list_authors()` in Twenty Fourteen to make use of this new functionality, adding a new `twentyfourteen_list_authors_query_args` filter to make it easier to override this behavior.

Props scribu, lgladdly, boonebgorges, spacedmonkey, peterwilsoncc, SergeyBiryukov, swissspidy.
Fixes #16841.

Built from https://develop.svn.wordpress.org/trunk@51943


git-svn-id: http://core.svn.wordpress.org/trunk@51532 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-10-27 18:43:57 +00:00
..
css Bundled Themes: Improve display of blocks in widget areas. 2021-06-22 20:14:59 +00:00
genericons
images Bundled Themes: Introduce block patterns for Twenty Fourteen. 2021-05-28 18:17:59 +00:00
inc Coding Standards: Add public visibility to methods in src directory. 2021-10-18 17:52:58 +00:00
js External Libraries: First pass at fixing jQuery deprecations in WordPress core and bundled themes. 2021-01-22 12:32:03 +00:00
page-templates
404.php
archive.php
author.php
category.php
comments.php
content-aside.php
content-audio.php
content-featured-post.php Coding Standards: Use strict comparison where static strings are involved. 2020-05-16 18:42:12 +00:00
content-gallery.php
content-image.php
content-link.php
content-none.php
content-page.php
content-quote.php
content-video.php
content.php Coding Standards: Use strict comparison where static strings are involved. 2020-05-16 18:42:12 +00:00
featured-content.php
footer.php
functions.php Role/Capability: Add support for capability queries in WP_User_Query. 2021-10-27 18:43:57 +00:00
header.php Bundled Themes: Add / character to <img> tags. 2021-08-04 14:24:02 +00:00
image.php
index.php
page.php
readme.txt Bundled Themes: Bump bundled theme versions for WordPress 5.8. 2021-07-18 23:05:00 +00:00
rtl.css
screenshot.png
search.php
sidebar-content.php
sidebar-footer.php
sidebar.php
single.php
style.css Bundled Themes: Bump bundled theme versions for WordPress 5.8. 2021-07-18 23:05:00 +00:00
tag.php
taxonomy-post_format.php

=== Twenty Fourteen ===
Contributors: wordpressdotorg
Requires at least: WordPress 3.6
Tested up to: 5.8
Stable tag: 3.2
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, news, two-columns, three-columns, left-sidebar, right-sidebar, custom-background, custom-header, custom-menu, editor-style, featured-images, flexible-header, footer-widgets, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, accessibility-ready, block-patterns

== Description ==
In 2014, our default theme lets you create a responsive magazine website with a sleek, modern design. Feature your favorite homepage content in either a grid or a slider. Use the three widget areas to customize your website, and change your content's layout with a full-width page template and a contributor page to show off your authors. Creating a magazine website with WordPress has never been easier.

For more information about Twenty Fourteen please go to https://codex.wordpress.org/Twenty_Fourteen.

== Installation ==

1. In your admin panel, go to Appearance -> Themes and click the 'Add New' button.
2. Type in Twenty Fourteen in the search form and press the 'Enter' key in your keyboard.
3. Click on the 'Activate' button to use your new theme right away.
4. Go to https://codex.wordpress.org/Twenty_Fourteen for a guide to customize this theme.
5. Navigate to Appearance > Customize in your admin panel.

== Copyright ==

Twenty Fourteen WordPress Theme, Copyright 2013-2021 WordPress.org & Automattic.com
Twenty Fourteen is Distributed under the terms of the GNU GPL

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

Twenty Fourteen Theme is derived from the Further Theme, Copyright 2013 Takashi Irie
Further Theme is distributed under the terms of the GNU GPL

Twenty Fourteen Theme bundles the following third-party resources:

HTML5 Shiv v3.7.0, Copyright 2014 Alexander Farkas
Licenses: MIT/GPL2
Source: https://github.com/aFarkas/html5shiv

Genericons icon font, Copyright 2013-2017 Automattic.com
License: GNU GPL, Version 2 (or later)
Source: http://www.genericons.com

Photos from Stocksnap, used in block patterns.
License: CC0
Source: https://stocksnap.io/photo/fog-mountain-ZKN6UKFKEO
        https://stocksnap.io/photo/ocean-beach-AEZJXB5LL5
        https://stocksnap.io/photo/architecture-building-BIL5D73PRC
        https://stocksnap.io/photo/sea-ocean-G5GBM522C6
        https://stocksnap.io/photo/guy-man-7CFLDIWXK5

== Changelog ==

= 3.2 =
* Released: July 20, 2021

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_3.2

= 3.1 =
* Released: March 9, 2021

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_3.1

= 3.0 =
* Released: December 8, 2020

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_3.0

= 2.9 =
* Released: August 11, 2020

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_2.9

= 2.8 =
* Released: March 31, 2020

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_2.8

= 2.7 =
* Released: May 7, 2019

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_2.7

= 2.6 =
* Released: February 21, 2019

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_2.6

= 2.5 =
* Released: January 9, 2019

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_2.5

= 2.4 =
* Released: December 19, 2018

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_2.4

= 2.3 =
* Released: December 6, 2018

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_2.3

= 2.2 =
* Released: May 17, 2018

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_2.2

= 2.1 =
* Released: November 14, 2017

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_2.1

= 2.0 =
* Released: June 8, 2017

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_2.0

= 1.9 =
* Released: December 6, 2016

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_1.9

= 1.8 =
* Released: August 15, 2016

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_1.8

= 1.7 =
* Released: April 12, 2016

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_1.7

= 1.6 =
* Released: December 8, 2015

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_1.6

= 1.5 =
* Released: August 18, 2015

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_1.5

= 1.4 =
* Released: April 23, 2015

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_1.4

= 1.3 =
* Released: December 18, 2014

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_1.3

= 1.2 =
* Released: September 4, 2014

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_1.2

= 1.1 =
* Released: May 8, 2014

https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_1.1

= 1.0 =
* Released: December 12, 2013

Initial release.