Changeset 8738
- Timestamp:
- 08/26/2008 07:18:58 PM (17 years ago)
- Location:
- trunk/wp-includes
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/wp-includes/query.php
r8667 r8738 1047 1047 1048 1048 if ( !empty($q['category__not_in']) ) { 1049 $ids = get_objects_in_term($q['category__not_in'], 'category'); 1050 if ( is_wp_error( $ids ) ) 1051 return $ids; 1052 if ( is_array($ids) && count($ids > 0) ) { 1053 $out_posts = "'" . implode("', '", $ids) . "'"; 1054 $whichcat .= " AND $wpdb->posts.ID NOT IN ($out_posts)"; 1049 if ( $wpdb->supports_subqueries() ) { 1050 $cat_string = "'" . implode("', '", $q['category__not_in']) . "'"; 1051 $whichcat .= " AND $wpdb->posts.ID NOT IN (SELECT $wpdb->term_relationships.object_id FROM $wpdb->term_relationships WHERE $wpdb->term_relationships.term_taxonomy_id IN ($cat_string) )"; 1052 } else { 1053 $ids = get_objects_in_term($q['category__not_in'], 'category'); 1054 if ( is_wp_error( $ids ) ) 1055 return $ids; 1056 if ( is_array($ids) && count($ids > 0) ) { 1057 $out_posts = "'" . implode("', '", $ids) . "'"; 1058 $whichcat .= " AND $wpdb->posts.ID NOT IN ($out_posts)"; 1059 } 1055 1060 } 1056 1061 } -
trunk/wp-includes/wp-db.php
r8600 r8738 925 925 926 926 /** 927 * Whether of not the database version supports sub-queries. 928 * 929 * @since 2.7 930 * 931 * @return bool True if sub-queries are supported, false if version does not 932 */ 933 function supports_subqueries() { 934 return ( version_compare(mysql_get_server_info($this->dbh), '4.1.0', '>=') ); 935 } 936 937 /** 927 938 * Retrieve the name of the function that called wpdb. 928 939 *
Note: See TracChangeset
for help on using the changeset viewer.