Date/Time: In WP_Date_Query::__construct(), return early if $date_query is empty or not an array.

Props vishalkakadiya.
Fixes #47392.

git-svn-id: https://develop.svn.wordpress.org/trunk@45850 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Sergey Biryukov 2019-08-19 15:16:18 +00:00
parent 4e0499e5bf
commit 0f8ba2cf2a

View File

@ -145,25 +145,21 @@ class WP_Date_Query {
* 'comment_date', 'comment_date_gmt'. * 'comment_date', 'comment_date_gmt'.
*/ */
public function __construct( $date_query, $default_column = 'post_date' ) { public function __construct( $date_query, $default_column = 'post_date' ) {
if ( empty( $date_query ) || ! is_array( $date_query ) ) {
return;
}
if ( isset( $date_query['relation'] ) && 'OR' === strtoupper( $date_query['relation'] ) ) { if ( isset( $date_query['relation'] ) && 'OR' === strtoupper( $date_query['relation'] ) ) {
$this->relation = 'OR'; $this->relation = 'OR';
} else { } else {
$this->relation = 'AND'; $this->relation = 'AND';
} }
if ( ! is_array( $date_query ) ) {
return;
}
// Support for passing time-based keys in the top level of the $date_query array. // Support for passing time-based keys in the top level of the $date_query array.
if ( ! isset( $date_query[0] ) && ! empty( $date_query ) ) { if ( ! isset( $date_query[0] ) ) {
$date_query = array( $date_query ); $date_query = array( $date_query );
} }
if ( empty( $date_query ) ) {
return;
}
if ( ! empty( $date_query['column'] ) ) { if ( ! empty( $date_query['column'] ) ) {
$date_query['column'] = esc_sql( $date_query['column'] ); $date_query['column'] = esc_sql( $date_query['column'] );
} else { } else {