Automattic\WooCommerce\Admin\API
Products::add_wp_query_join()
Join posts meta tables when product search or low stock query is present.
Method of the class: Products{}
No Hooks.
Return
String
.
Usage
$result = Products::add_wp_query_join( $join, $wp_query );
- $join(string) (required)
- Join clause used to search posts.
- $wp_query(object) (required)
- WP_Query object.
Products::add_wp_query_join() Products::add wp query join code WC 9.6.0
public static function add_wp_query_join( $join, $wp_query ) { global $wpdb; $search = $wp_query->get( 'search' ); if ( $search && wc_product_sku_enabled() ) { $join = self::append_product_sorting_table_join( $join ); } if ( $wp_query->get( 'low_in_stock' ) ) { $product_lookup_table = $wpdb->prefix . 'wc_order_product_lookup'; $join = self::append_product_sorting_table_join( $join ); $join .= " LEFT JOIN {$wpdb->postmeta} AS low_stock_amount_meta ON {$wpdb->posts}.ID = low_stock_amount_meta.post_id AND low_stock_amount_meta.meta_key = '_low_stock_amount' "; $join .= " LEFT JOIN {$product_lookup_table} product_lookup ON {$wpdb->posts}.ID = CASE WHEN {$wpdb->posts}.post_type = 'product' THEN product_lookup.product_id WHEN {$wpdb->posts}.post_type = 'product_variation' THEN product_lookup.variation_id END"; } return $join; }