WordPress.org

Make WordPress Core

Ticket #9645: 9645.2.diff

File 9645.2.diff, 1.6 KB (added by coffee2code, 6 years ago)

Slight refactoring of code around the area affected by the original patch (this includes original patch).

  • wp-includes/query.php

     
    18041804                                $whichcat .= " AND $wpdb->posts.ID NOT IN ( SELECT tr.object_id FROM $wpdb->term_relationships AS tr INNER JOIN $wpdb->term_taxonomy AS tt ON tr.term_taxonomy_id = tt.term_taxonomy_id WHERE tt.taxonomy = 'category' AND tt.term_id IN ($cat_string) )"; 
    18051805                        } else { 
    18061806                                $ids = get_objects_in_term($q['category__not_in'], 'category'); 
    1807                                 if ( is_wp_error( $ids ) ) 
    1808                                         $ids = array(); 
    1809                                 if ( is_array($ids) && count($ids > 0) ) { 
    1810                                         $out_posts = "'" . implode("', '", $ids) . "'"; 
    1811                                         $whichcat .= " AND $wpdb->posts.ID NOT IN ($out_posts)"; 
    1812                                 } 
     1807                                if ( !is_wp_error($ids) && is_array($ids) && count($ids) > 0 ) 
     1808                                        $whichcat .= " AND $wpdb->posts.ID NOT IN ('" . implode("', '", $ids) . "')"; 
    18131809                        } 
    18141810                } 
    18151811 
     
    18971893                                $whichcat .= " AND $wpdb->posts.ID NOT IN ( SELECT tr.object_id FROM $wpdb->term_relationships AS tr INNER JOIN $wpdb->term_taxonomy AS tt ON tr.term_taxonomy_id = tt.term_taxonomy_id WHERE tt.taxonomy = 'post_tag' AND tt.term_id IN ($tag_string) )"; 
    18981894                        } else { 
    18991895                                $ids = get_objects_in_term($q['tag__not_in'], 'post_tag'); 
    1900                                 if ( is_wp_error( $ids ) ) 
    1901                                         $ids = array(); 
    1902                                 if ( is_array($ids) && count($ids > 0) ) { 
    1903                                         $out_posts = "'" . implode("', '", $ids) . "'"; 
    1904                                         $whichcat .= " AND $wpdb->posts.ID NOT IN ($out_posts)"; 
    1905                                 } 
     1896                                if ( !is_wp_error($ids) && is_array($ids) && count($ids) > 0 ) 
     1897                                        $whichcat .= " AND $wpdb->posts.ID NOT IN ('" . implode("', '", $ids) . "')"; 
    19061898                        } 
    19071899                } 
    19081900