WordPress.org

Make WordPress Core

Ticket #10791: multiple-post-types.patch

File multiple-post-types.patch, 1.0 KB (added by prettyboymp, 5 years ago)

latest patch with IN statement

  • query.php

     
    14861486                        } 
    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']) ) 
    14931497                        $qv['post_status'] = preg_replace('|[^a-z0-9_,-]|', '', $qv['post_status']); 
     
    20722076 
    20732077                if ( 'any' == $post_type ) { 
    20742078                        $where .= " AND $wpdb->posts.post_type != 'revision'"; 
     2079                } elseif ( !empty( $post_type ) && is_array( $post_type ) ) { 
     2080                        $where .= " AND $wpdb->posts.post_type IN ('" . join("', '", $post_type) . "')"; 
    20752081                } elseif ( ! empty( $post_type ) ) { 
    20762082                        $where .= " AND $wpdb->posts.post_type = '$post_type'"; 
    20772083                } elseif ( $this->is_attachment ) {