Filters the arguments which will be passed to WP_Query
for the Query Loop Block.
Description
Anything to this filter should be compatible with the WP_Query
API to form the query context which will be passed down to the Query Loop Block’s children.
This can help, for example, to include additional settings or meta queries not directly supported by the core Query Loop Block, and extend its capabilities.
Please note that this will only influence the query that will be rendered on the front-end. The editor preview is not affected by this filter. Also, worth noting that the editor preview uses the REST API, so, ideally, one should aim to provide attributes which are also compatible with the REST API, in order to be able to implement identical queries on both sides.
Parameters
$query
array- Array containing parameters for
WP_Query
as parsed by the block context. $block
WP_Block- Block instance.
$page
int- Current query’s page.
Source
return apply_filters( 'query_loop_block_query_vars', $query, $block, $page );
Changelog
Version | Description |
---|---|
6.1.0 | Introduced. |
Here is an example of handing a custom post type which holds an event date field in metadata and where I wanted the Query Loop to display posts sorted by the event date rather than the post date. I also wanted to exclude dates in the past.
Example of modifying the query based on the class name set on the Post Template block: