Make WordPress Core

Ticket #24674: 24674.patch

File 24674.patch, 1.8 KB (added by clifgriffin, 12 years ago)
  • wp-includes/query.php

    diff --git a/wp-includes/query.php b/wp-includes/query.php
    index 6ba10c4..e609c8f 100644
    a b class WP_Query { 
    31403140                $author_obj = $this->get_queried_object();
    31413141
    31423142                $author = (array) $author;
    3143 
    3144                 if ( in_array( $author_obj->ID, $author ) )
     3143               
     3144                if( $author_obj->ID > 0 && in_array( $author_obj->ID, $author ) )
     3145                        return true;
     3146                elseif ( in_array( $author_obj->ID, $author, true ) )
    31453147                        return true;
    31463148                elseif ( in_array( $author_obj->nickname, $author ) )
    31473149                        return true;
    class WP_Query { 
    31723174                $cat_obj = $this->get_queried_object();
    31733175
    31743176                $category = (array) $category;
    3175 
    3176                 if ( in_array( $cat_obj->term_id, $category ) )
     3177               
     3178                if ( $cat_obj->term_id > 0 && in_array( $cat_obj->term_id, $category ) )
     3179                        return true;
     3180                elseif ( in_array( $cat_obj->term_id, $category, true ) )
    31773181                        return true;
    31783182                elseif ( in_array( $cat_obj->name, $category ) )
    31793183                        return true;
    class WP_Query { 
    34003404
    34013405                $page = (array) $page;
    34023406
    3403                 if ( in_array( $page_obj->ID, $page ) )
     3407                if ( $page_obj->ID > 0 && in_array( $page_obj->ID, $page ) )
    34043408                        return true;
     3409                elseif ( in_array( $page_obj->ID, $page, true ) )
     3410                                return true;
    34053411                elseif ( in_array( $page_obj->post_title, $page ) )
    34063412                        return true;
    3407                 else if ( in_array( $page_obj->post_name, $page ) )
     3413                elseif ( in_array( $page_obj->post_name, $page ) )
    34083414                        return true;
    34093415
    34103416                return false;
    class WP_Query { 
    34803486                $post_obj = $this->get_queried_object();
    34813487
    34823488                $post = (array) $post;
    3483 
    3484                 if ( in_array( $post_obj->ID, $post ) )
     3489               
     3490                if ( $post_obj->ID > 0 && in_array( $post_obj->ID, $post ) )
     3491                        return true;
     3492                elseif ( in_array( $post_obj->ID, $post, true ) )
    34853493                        return true;
    34863494                elseif ( in_array( $post_obj->post_title, $post ) )
    34873495                        return true;