我正在尝试按类别获取woocommerce产品。。当我使用wpdb进行查询时,它会正确地获取存在于后端产品列表中的产品。但是,当我使用query\\u posts进行查询时,它会得到另一组未在后端列出的产品。
为什么会出现这种差异?
global $post, $wpdb;
$query = "SELECT $wpdb->posts.* FROM $wpdb->posts
LEFT JOIN $wpdb->term_relationships ON
($wpdb->posts.ID = $wpdb->term_relationships.object_id)
LEFT JOIN $wpdb->term_taxonomy ON
($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id)
WHERE $wpdb->posts.post_status = \'publish\'
AND $wpdb->term_taxonomy.taxonomy = \'product_cat\'
AND $wpdb->term_taxonomy.term_id = 1
$childcond
ORDER BY post_date DESC";
if ($wpdb->num_rows > 0) {
foreach ($postresults as $post) {
//process product item
}
}
使用query\\u post query_posts(\'cat=1&showposts=-1\');