Toto je opět jeden z těch snippetů, které si zapisuji, pro budoucí použití. Konkrétně se jedná o výpis všech produktů ve Woocommerce, které nemají náhledový obrázek.
Z nějakého důvodu jsem pomocí WP_Query, nedostal všechny produkty, argument posts_per_page nefungoval.
Takže, pokud chcete získat všechny produkty/posty, které nemají určitý custom field, tak toto funguje bezpečně:
$querystr = " SELECT ID FROM $wpdb->posts WHERE $wpdb->posts.ID NOT IN ( SELECT post_id FROM $wpdb->postmeta WHERE ($wpdb->postmeta.post_id = $wpdb->posts.ID) AND meta_key = '_thumbnail_id' ) AND (post_status = 'publish') AND post_type = 'product' ORDER BY post_date DESC "; $products = $wpdb->get_results( $querystr ); |
V případě, že potřebujete kontrolovat neexistenci jiného custom fieldu, zaměňte _thumbnail_id a případně změňte post_type.