Ticket #13413: 13413.diff
File 13413.diff, 1.6 KB (added by , 15 years ago) |
---|
-
wp-includes/query.php
1877 1877 } else { 1878 1878 $q['cat'] = ''.urldecode($q['cat']).''; 1879 1879 $q['cat'] = addslashes_gpc($q['cat']); 1880 $cat_array = preg_split('/[,\ s]+/', $q['cat']);1880 $cat_array = preg_split('/[,\r\n\t ]+/', $q['cat']); 1881 1881 $q['cat'] = ''; 1882 1882 $req_cats = array(); 1883 1883 foreach ( (array) $cat_array as $cat ) { … … 1946 1946 // Tags 1947 1947 if ( '' != $q['tag'] ) { 1948 1948 if ( strpos($q['tag'], ',') !== false ) { 1949 $tags = preg_split('/[,\ s]+/', $q['tag']);1949 $tags = preg_split('/[,\r\n\t ]+/', $q['tag']); 1950 1950 foreach ( (array) $tags as $tag ) { 1951 1951 $tag = sanitize_term_field('slug', $tag, 0, 'post_tag', 'db'); 1952 1952 $q['tag_slug__in'][] = $tag; 1953 1953 } 1954 } else if ( preg_match('/[+\ s]+/', $q['tag']) || !empty($q['cat']) ) {1955 $tags = preg_split('/[+\ s]+/', $q['tag']);1954 } else if ( preg_match('/[+\r\n\t ]+/', $q['tag']) || !empty($q['cat']) ) { 1955 $tags = preg_split('/[+\r\n\t ]+/', $q['tag']); 1956 1956 foreach ( (array) $tags as $tag ) { 1957 1957 $tag = sanitize_term_field('slug', $tag, 0, 'post_tag', 'db'); 1958 1958 $q['tag_slug__and'][] = $tag; … … 2083 2083 $eq = '='; 2084 2084 $andor = 'OR'; 2085 2085 } 2086 $author_array = preg_split('/[,\ s]+/', $q['author']);2086 $author_array = preg_split('/[,\r\n\t ]+/', $q['author']); 2087 2087 $_author_array = array(); 2088 2088 foreach ( $author_array as $key => $_author ) 2089 2089 $_author_array[] = "$wpdb->posts.post_author " . $eq . ' ' . absint($_author);