WordPress.org

Make WordPress Core

Changeset 12144


Ignore:
Timestamp:
11/05/09 16:08:53 (4 years ago)
Author:
ryan
Message:

Allow querying multiple post types. Props prettyboymp. fixes #10791

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-includes/query.php

    r12143 r12144  
    14871487        } 
    14881488 
    1489         if ( !empty($qv['post_type']) ) 
    1490             $qv['post_type'] = sanitize_user($qv['post_type'], true); 
     1489        if ( !empty($qv['post_type']) ) { 
     1490            if(is_array($qv['post_type'])) 
     1491                $qv['post_type'] = array_map('sanitize_user', $qv['post_type'], array(true)); 
     1492            else 
     1493                $qv['post_type'] = sanitize_user($qv['post_type'], true); 
     1494        } 
    14911495 
    14921496        if ( !empty($qv['post_status']) ) 
     
    20732077        } 
    20742078 
    2075         $post_type_cap = $post_type; 
     2079        if ( is_array($post_type) ) 
     2080            $post_type_cap = 'multiple_post_type'; 
     2081        else 
     2082            $post_type_cap = $post_type; 
    20762083 
    20772084        $exclude_post_types = ''; 
     
    20812088        if ( 'any' == $post_type ) { 
    20822089            $where .= $exclude_post_types; 
     2090        } elseif ( !empty( $post_type ) && is_array( $post_type ) ) { 
     2091            $where .= " AND $wpdb->posts.post_type IN ('" . join("', '", $post_type) . "')";  
    20832092        } elseif ( ! empty( $post_type ) ) { 
    20842093            $where .= " AND $wpdb->posts.post_type = '$post_type'"; 
Note: See TracChangeset for help on using the changeset viewer.