Rufen Sie alle WooCommerce-Produkte ohne Bild ab, die über SQL auf Lager sind

Lesezeit: 1 Minute

Benutzeravatar von nika_fedotova
nika_fedotova

Ich verwende diese SQL-Abfrage, um alle Produkte ohne Bild abzurufen

SELECT id
FROM   `wp_posts` 
WHERE  id NOT IN (SELECT post_id FROM `wp_postmeta` WHERE  `meta_key` = 
'_thumbnail_id') 
AND `post_type` = 'product' 
AND `post_status` = 'publish'

Jetzt würde ich alle Produkte ohne Bild und Lagerstatus auf Lager abrufen, gibt es eine Möglichkeit, dies zu tun?

Mit der folgenden SQL-Abfrage können Sie Produkte ohne Bild abrufen, die “auf Lager” sind:

SELECT ID
FROM wp_posts p
INNER JOIN  wp_postmeta pm ON p.ID = pm.post_id
WHERE 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"

Oder Sie können es mit abfragen WPDB Klasse über PHP wie:

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 output
print_r($product_ids);

1434920cookie-checkRufen Sie alle WooCommerce-Produkte ohne Bild ab, die über SQL auf Lager sind

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy