Automattic\WooCommerce\StoreApi\Utilities
ProductQueryFilters::generate_stock_status_count_query()
Generate calculate query by stock status.
Method of the class: ProductQueryFilters{}
No Hooks.
Return
false|String
.
Usage
// private - for code of main (parent) class only $result = $this->generate_stock_status_count_query( $status, $product_query_sql, $stock_status_options );
- $status(string) (required)
- status to calculate.
- $product_query_sql(string) (required)
- product query for current filter state.
- $stock_status_options(array) (required)
- available stock status options.
ProductQueryFilters::generate_stock_status_count_query() ProductQueryFilters::generate stock status count query code WC 9.8.1
private function generate_stock_status_count_query( $status, $product_query_sql, $stock_status_options ) { if ( ! in_array( $status, $stock_status_options, true ) ) { return false; } global $wpdb; $status = esc_sql( $status ); return " SELECT COUNT( DISTINCT posts.ID ) as status_count FROM {$wpdb->posts} as posts INNER JOIN {$wpdb->postmeta} as postmeta ON posts.ID = postmeta.post_id AND postmeta.meta_key = '_stock_status' AND postmeta.meta_value = '{$status}' WHERE posts.ID IN ( {$product_query_sql} ) "; }