Retrieve all WooCommerce products without image that are in stock via SQL Retrieve all WooCommerce products without image that are in stock via SQL wordpress wordpress

Retrieve all WooCommerce products without image that are in stock via SQL


The following SQL Query will allow you to retrieve products without image that are "In stock":

SELECT IDFROM wp_posts pINNER JOIN  wp_postmeta pm ON p.ID = pm.post_idWHERE ID NOT IN (SELECT post_id FROM wp_postmeta WHERE meta_key = '_thumbnail_id')AND p.post_type = 'product'AND p.post_status = 'publish'AND pm.meta_key = '_stock_status'AND pm.meta_value = 'instock'

Or you can query it using WPDB Class through php like:

global $wpdb;$product_ids = $wpdb->get_col( "    SELECT ID    FROM {$wpdb->prefix}posts p    INNER JOIN  {$wpdb->prefix}postmeta pm ON p.ID = pm.post_id    WHERE ID NOT IN (SELECT post_id FROM {$wpdb->prefix}postmeta WHERE meta_key = '_thumbnail_id')    AND p.post_type = 'product'    AND p.post_status = 'publish'    AND pm.meta_key = '_stock_status'    AND pm.meta_value = 'instock'");// Raw outputprint_r($product_ids);