nika_fedotova
Uso esta consulta sql para recuperar todos los productos sin imagen
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'
Ahora recuperaría todos los productos sin imagen y estado de stock en stock, ¿hay alguna forma de hacerlo?
La siguiente Consulta SQL le permitirá recuperar productos sin imagen que están “En stock”:
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"
O puede consultarlo usando WPDB
Clase a través de php como:
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);
¿Ha sido útil esta solución?
Tu feedback nos ayuda a saber si la solución es correcta y está funcionando. De esta manera podemos revisar y corregir el contenido.