WordPress.org

Make WordPress Core

Ticket #21290: 21290-2.diff

File 21290-2.diff, 775 bytes (added by jondavidjohn, 6 years ago)
  • wp-includes/query.php

     
    22162216                if ( $this->is_tax ) {
    22172217                        if ( empty($post_type) ) {
    22182218                                $post_type = 'any';
     2219                                $tax_post_types = array();
     2220                                foreach ( get_taxonomies() as $taxonomy ) {
     2221                                        if ( isset($this->query_vars[$taxonomy]) ) {
     2222                                                $tax_obj = get_taxonomy($taxonomy);
     2223                                                $tax_post_types = array_unique( array_merge($tax_post_types, $tax_obj->object_type) );
     2224                                        }
     2225                                }
     2226                                if ( !empty($tax_post_types) ) {
     2227                                        $post_type = $tax_post_types;
     2228                                }
    22192229                                $post_status_join = true;
    22202230                        } elseif ( in_array('attachment', (array) $post_type) ) {
    22212231                                $post_status_join = true;