views:

55

answers:

3

How do I query posts from a category using more than 1 custom key/value pair?

A: 

There's lots of information about this here

For example...

$querystr = "
    SELECT wposts.* 
    FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta
    WHERE wposts.ID = wpostmeta.post_id 
    AND wpostmeta.meta_key = 'tag' 
    AND wpostmeta.meta_value = 'email' 
    AND wposts.post_status = 'publish' 
    AND wposts.post_type = 'post' 
    ORDER BY wposts.post_date DESC
 ";

 $pageposts = $wpdb->get_results($querystr, OBJECT);
Ben Shelock
tried this - - its only one key / value pair
InnateDev
+1  A: 

$query = "SELECT * FROM dishes " ;

$return  = $db->query( $query ) ; 
pavun_cool
A: 

You can include postmeta several times.

$querystr = "
    SELECT wposts.* 
    FROM $wpdb->posts wposts, 
         $wpdb->postmeta wpostmeta1, 
         $wpdb->postmeta wpostmeta2
    WHERE wposts.ID = wpostmeta1.post_id 
    AND wposts.ID = wpostmeta2.post_id 
    AND wpostmeta1.meta_key = 'tag' 
    AND wpostmeta1.meta_value = 'email' 
    AND wpostmeta2.meta_key = 'anothertag' 
    AND wpostmeta2.meta_value = 'anothervalue' 
    AND wposts.post_status = 'publish' 
    AND wposts.post_type = 'post' 
    ORDER BY wposts.post_date DESC
 ";

 $pageposts = $wpdb->get_results($querystr, OBJECT);
windyjonas
aha! so how would this query work with a category id selection?
InnateDev