Automattic\WooCommerce\Admin\API\Reports\Stock
Controller::get_products
Query products.
Method of the class: Controller{}
No Hooks.
Returns
array.
Usage
// protected - for code of main (parent) or child class $result = $this->get_products( $query_args );
- $query_args(array) (required)
- Query args.
Controller::get_products() Controller::get products code WC 11.1.2
protected function get_products( $query_args ) {
$query = new \WP_Query();
$result = $query->query( $query_args );
$total_posts = $query->found_posts;
if ( $total_posts < 1 && isset( $query_args['paged'] ) && absint( $query_args['paged'] ) > 1 ) {
// Out-of-bounds, run the query again without LIMIT for total count.
unset( $query_args['paged'] );
$count_query = new \WP_Query();
$count_query->query( $query_args );
$total_posts = $count_query->found_posts;
}
return array(
'objects' => array_map( 'wc_get_product', $result ),
'total' => (int) $total_posts,
'pages' => (int) ceil( $total_posts / (int) $query->query_vars['posts_per_page'] ),
);
}