apply_filters_ref_array( 'sites_pre_query', \WP_Site[]|int[]|int|null $site_data, WP_Site_Query $query )
- Since
- 5.2.0, 5.6.0
Description
Return a non-null value to bypass WordPress' default site queries.
The expected return type from this filter depends on the value passed in the request query vars:
- When
$this->query_vars['count']is set, the filter should return the site count as an integer. - When
'ids' === $this->query_vars['fields'], the filter should return an array of site IDs. - Otherwise the filter should return an array of WP_Site objects.
Note that if the filter returns an array of site data, it will be assigned to the sites property of the current WP_Site_Query instance.
Filtering functions that require pagination information are encouraged to set the found_sites and max_num_pages properties of the WP_Site_Query object, passed to the filter by reference. If WP_Site_Query does not perform a database query, it will not have enough information to generate these values itself.
Compatibility
- WordPress
- since 5.6.0
- 6.7.7
- 6.8.8
- 6.9.7
- 7.0.4
- 7.1.0
Present in every tracked release (6.7.7 to 7.1.0).
Parameters
$site_data\WP_Site[]|int[]|int|null- Return an array of site data to short-circuit WP's site query, the site count as an integer if
$this->query_vars['count']is set, or null to run the normal queries. $queryWP_Site_Query- The WP_Site_Query instance, passed by reference.
Where this hook fires · 1
wp-includes/class-wp-site-query.php:341WP_Site_Query::get_sites()
Source code
<?php * * @param WP_Site[]|int[]|int|null $site_data Return an array of site data to short-circuit WP's site query, * the site count as an integer if `$this->query_vars['count']` is set, * or null to run the normal queries. * @param WP_Site_Query $query The WP_Site_Query instance, passed by reference. */ $site_data = apply_filters_ref_array( 'sites_pre_query', array( $site_data, &$this ) ); if ( null !== $site_data ) { if ( is_array( $site_data ) && ! $this->query_vars['count'] ) { $this->sites = $site_data; } Changelog
Introduced in 5.2.0. Unchanged from 6.7.7 through 7.1.0.
Signature, return type and hooks compared across 5 parsed releases.
sites property of the current WP_Site_Query instance.from the docblockAbout this page
- Parsed data
- Generated from the wordpress-develop 6.8.8 tag, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.
- Corrections
- Something wrong on this page? Report it and it gets fixed in the next regeneration.