Multisite: Introduce get_sites()

`get_sites()` is a wrapper for `WP_Site_Query`.

Props spacedmonkey, DrewAPicture.
See #35791.


git-svn-id: https://develop.svn.wordpress.org/trunk@37616 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Jeremy Felt 2016-06-01 23:20:39 +00:00
parent 23aa6afccb
commit e97e6bce70
1 changed files with 57 additions and 0 deletions

View File

@ -560,6 +560,63 @@ function update_site_cache( &$sites ) {
}
}
/**
* Retrieves a list of sites matching requested arguments.
*
* @since 4.6.0
*
* @see WP_Site_Query::parse_query()
*
* @param string|array $args {
* Optional. Array or query string of site query parameters. Default empty.
*
* @type array $site__in Array of site IDs to include. Default empty.
* @type array $site__not_in Array of site IDs to exclude. Default empty.
* @type bool $count Whether to return a site count (true) or array of site objects.
* Default false.
* @type array $date_query Date query clauses to limit sites by. See WP_Date_Query.
* Default null.
* @type string $fields Site fields to return. Accepts 'ids' for site IDs only or empty
* for all fields. Default empty.
* @type int $ID A site ID to only return that site. Default empty.
* @type int $number Maximum number of sites to retrieve. Default null (no limit).
* @type int $offset Number of sites to offset the query. Used to build LIMIT clause.
* Default 0.
* @type bool $no_found_rows Whether to disable the `SQL_CALC_FOUND_ROWS` query. Default true.
* @type string|array $orderby Site status or array of statuses. Accepts 'id', 'domain', 'path',
* 'network_id', 'last_updated', 'registered', 'domain_length',
* 'path_length', 'site__in' and 'network__in'. Also accepts false,
* an empty array, or 'none' to disable `ORDER BY` clause.
* Default 'id'.
* @type string $order How to order retrieved sites. Accepts 'ASC', 'DESC'. Default 'ASC'.
* @type int $network_id Limit results to those affiliated with a given network ID.
* Default current network ID.
* @type array $network__in Array of network IDs to include affiliated sites for. Default empty.
* @type array $network__not_in Array of network IDs to exclude affiliated sites for. Default empty.
* @type string $domain Limit results to those affiliated with a given domain.
* Default empty.
* @type array $domain__in Array of domains to include affiliated sites for. Default empty.
* @type array $domain__not_in Array of domains to exclude affiliated sites for. Default empty.
* @type string $path Limit results to those affiliated with a given path.
* Default empty.
* @type array $path__in Array of paths to include affiliated sites for. Default empty.
* @type array $path__not_in Array of paths to exclude affiliated sites for. Default empty.
* @type int $public Limit results to public sites. Accepts '1' or '0'. Default empty.
* @type int $archived Limit results to archived sites. Accepts '1' or '0'. Default empty.
* @type int $mature Limit results to mature sites. Accepts '1' or '0'. Default empty.
* @type int $spam Limit results to spam sites. Accepts '1' or '0'. Default empty.
* @type int $deleted Limit results to deleted sites. Accepts '1' or '0'. Default empty.
* @type string $search Search term(s) to retrieve matching sites for. Default empty.
* @type bool $update_site_cache Whether to prime the cache for found sites. Default false.
* }
* @return array List of sites.
*/
function get_sites( $args = array() ) {
$query = new WP_Site_Query();
return $query->query( $args );
}
/**
* Retrieve option value for a given blog id based on name of option.
*