public function test_wp_site_query_by_search_with_text_in_path_and_domain_order_by_domain_desc() { $q = new WP_Site_Query(); $found = $q->query(array('fields' => 'ids', 'search' => 'make', 'order' => 'DESC', 'orderby' => 'domain')); $expected = array(self::$site_ids['www.w.org/make/'], self::$site_ids['make.wordpress.org/'], self::$site_ids['make.wordpress.org/foo/']); $this->assertEquals($expected, $found); }
/** * 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); }
public function test_wp_site_query_by_search_with_wildcard_in_text_exclude_domain_from_search() { $q = new WP_Site_Query(); $found = $q->query(array('fields' => 'ids', 'search' => 'm*ke', 'search_columns' => array('path'))); $expected = array(self::$site_ids['www.w.org/make/']); $this->assertEqualSets($expected, $found); }