Cast category and tag query args to array to allow passing a single ID or slug. Props SergeyBiryukov. fixes #14892

git-svn-id: http://svn.automattic.com/wordpress/trunk@17245 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
ryan 2011-01-09 16:42:01 +00:00
parent f06af8506b
commit 6a812fc677

View File

@ -1692,7 +1692,7 @@ class WP_Query {
}
if ( !empty($q['category__in']) ) {
$q['category__in'] = array_map('absint', array_unique( $q['category__in'] ) );
$q['category__in'] = array_map('absint', array_unique( (array) $q['category__in'] ) );
$tax_query[] = array(
'taxonomy' => 'category',
'terms' => $q['category__in'],
@ -1701,7 +1701,7 @@ class WP_Query {
}
if ( !empty($q['category__not_in']) ) {
$q['category__not_in'] = array_map('absint', array_unique( $q['category__not_in'] ) );
$q['category__not_in'] = array_map('absint', array_unique( (array) $q['category__not_in'] ) );
$tax_query[] = array(
'taxonomy' => 'category',
'terms' => $q['category__not_in'],
@ -1710,7 +1710,7 @@ class WP_Query {
}
if ( !empty($q['category__and']) ) {
$q['category__and'] = array_map('absint', array_unique( $q['category__and'] ) );
$q['category__and'] = array_map('absint', array_unique( (array) $q['category__and'] ) );
$tax_query[] = array(
'taxonomy' => 'category',
'terms' => $q['category__and'],
@ -1729,7 +1729,7 @@ class WP_Query {
}
if ( !empty($q['tag__in']) ) {
$q['tag__in'] = array_map('absint', array_unique( $q['tag__in'] ) );
$q['tag__in'] = array_map('absint', array_unique( (array) $q['tag__in'] ) );
$tax_query[] = array(
'taxonomy' => 'post_tag',
'terms' => $q['tag__in']
@ -1737,7 +1737,7 @@ class WP_Query {
}
if ( !empty($q['tag__not_in']) ) {
$q['tag__not_in'] = array_map('absint', array_unique( $q['tag__not_in'] ) );
$q['tag__not_in'] = array_map('absint', array_unique( (array) $q['tag__not_in'] ) );
$tax_query[] = array(
'taxonomy' => 'post_tag',
'terms' => $q['tag__not_in'],
@ -1746,7 +1746,7 @@ class WP_Query {
}
if ( !empty($q['tag__and']) ) {
$q['tag__and'] = array_map('absint', array_unique( $q['tag__and'] ) );
$q['tag__and'] = array_map('absint', array_unique( (array) $q['tag__and'] ) );
$tax_query[] = array(
'taxonomy' => 'post_tag',
'terms' => $q['tag__and'],
@ -1755,7 +1755,7 @@ class WP_Query {
}
if ( !empty($q['tag_slug__in']) ) {
$q['tag_slug__in'] = array_map('sanitize_title', $q['tag_slug__in']);
$q['tag_slug__in'] = array_map('sanitize_title', (array) $q['tag_slug__in']);
$tax_query[] = array(
'taxonomy' => 'post_tag',
'terms' => $q['tag_slug__in'],
@ -1764,7 +1764,7 @@ class WP_Query {
}
if ( !empty($q['tag_slug__and']) ) {
$q['tag_slug__and'] = array_map('sanitize_title', $q['tag_slug__and']);
$q['tag_slug__and'] = array_map('sanitize_title', (array) $q['tag_slug__and']);
$tax_query[] = array(
'taxonomy' => 'post_tag',
'terms' => $q['tag_slug__and'],