When using WP_Query's `'fields' => 'ids'` (or `'fields' => 'id=>parent'`), make sure the returned result is always an array of integers.
fixes #31194. see #27252. Built from https://develop.svn.wordpress.org/trunk@31324 git-svn-id: http://core.svn.wordpress.org/trunk@31305 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
eec82f9330
commit
7c97e59ed6
|
@ -3421,10 +3421,11 @@ class WP_Query {
|
||||||
|
|
||||||
if ( 'ids' == $q['fields'] ) {
|
if ( 'ids' == $q['fields'] ) {
|
||||||
$this->posts = $wpdb->get_col( $this->request );
|
$this->posts = $wpdb->get_col( $this->request );
|
||||||
|
$this->posts = array_map( 'intval', $this->posts );
|
||||||
$this->post_count = count( $this->posts );
|
$this->post_count = count( $this->posts );
|
||||||
$this->set_found_posts( $q, $limits );
|
$this->set_found_posts( $q, $limits );
|
||||||
|
|
||||||
return array_map( 'intval', $this->posts );
|
return $this->posts;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( 'id=>parent' == $q['fields'] ) {
|
if ( 'id=>parent' == $q['fields'] ) {
|
||||||
|
@ -3433,9 +3434,13 @@ class WP_Query {
|
||||||
$this->set_found_posts( $q, $limits );
|
$this->set_found_posts( $q, $limits );
|
||||||
|
|
||||||
$r = array();
|
$r = array();
|
||||||
foreach ( $this->posts as $post ) {
|
foreach ( $this->posts as $key => $post ) {
|
||||||
|
$this->posts[ $key ]->ID = (int) $post->ID;
|
||||||
|
$this->posts[ $key ]->post_parent = (int) $post->post_parent;
|
||||||
|
|
||||||
$r[ (int) $post->ID ] = (int) $post->post_parent;
|
$r[ (int) $post->ID ] = (int) $post->post_parent;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $r;
|
return $r;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
*
|
*
|
||||||
* @global string $wp_version
|
* @global string $wp_version
|
||||||
*/
|
*/
|
||||||
$wp_version = '4.2-alpha-31323';
|
$wp_version = '4.2-alpha-31324';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
||||||
|
|
Loading…
Reference in New Issue