Constructor.
Description
Time-related parameters that normally require integer values (‘year’, ‘month’, ‘week’, ‘dayofyear’, ‘day’, ‘dayofweek’, ‘dayofweek_iso’, ‘hour’, ‘minute’, ‘second’) accept arrays of integers for some values of ‘compare’. When ‘compare’ is ‘IN’ or ‘NOT IN’, arrays are accepted; when ‘compare’ is ‘BETWEEN’ or ‘NOT BETWEEN’, arrays of two valid values are required. See individual argument descriptions for accepted values.
Parameters
$date_query
arrayrequired- Array of date query clauses.
...$0
arraycolumn
stringOptional. The column to query against. If undefined, inherits the value of the$default_column
parameter. See WP_Date_Query::validate_column() and the 'date_query_valid_columns' filter for the list of accepted values.
Default'post_date'
.compare
stringOptional. The comparison operator. Accepts'='
,'!='
,'>'
,'>='
,'<'
,'<='
,'IN'
, ‘NOT IN’,'BETWEEN'
, ‘NOT BETWEEN’. Default'='
.relation
stringOptional. The boolean relationship between the date queries. Accepts'OR'
or'AND'
.
Default'OR'
....$0
arrayOptional. An array of first-order clause parameters, or another fully-formed date query.before
string|arrayOptional. Date to retrieve posts before. Acceptsstrtotime()
-compatible string, or array of ‘year’, ‘month’, ‘day’ values.year
stringThe four-digit year. Default empty. Accepts any four-digit year.month
stringOptional when passing array.The month of the year.
Default (string:empty)|(array:1). Accepts numbers 1-12.day
stringOptional when passing array.The day of the month.
Default (string:empty)|(array:1). Accepts numbers 1-31.
after
string|arrayOptional. Date to retrieve posts after. Acceptsstrtotime()
-compatible string, or array of ‘year’, ‘month’, ‘day’ values.year
stringThe four-digit year. Accepts any four-digit year. Default empty.month
stringOptional when passing array. The month of the year. Accepts numbers 1-12.
Default (string:empty)|(array:12).day
stringOptional when passing array.The day of the month. Accepts numbers 1-31.
Default (string:empty)|(array:last day of month).
column
stringOptional. Used to add a clause comparing a column other than the column specified in the top-level$column
parameter.
See WP_Date_Query::validate_column() and the 'date_query_valid_columns' filter for the list of accepted values. Default is the value of top-level$column
.compare
stringOptional. The comparison operator. Accepts'='
,'!='
,'>'
,'>='
,'<'
,'<='
,'IN'
, ‘NOT IN’,'BETWEEN'
, ‘NOT BETWEEN’.'IN'
, ‘NOT IN’,'BETWEEN'
, and ‘NOT BETWEEN’. Comparisons support arrays in some time-related parameters. Default'='
.inclusive
boolOptional. Include results from dates specified in'before'
or'after'
. Default false.year
int|int[]Optional. The four-digit year number. Accepts any four-digit year or an array of years if$compare
supports it. Default empty.month
int|int[]Optional. The two-digit month number. Accepts numbers 1-12 or an array of valid numbers if$compare
supports it. Default empty.week
int|int[]Optional. The week number of the year. Accepts numbers 0-53 or an array of valid numbers if$compare
supports it. Default empty.dayofyear
int|int[]Optional. The day number of the year. Accepts numbers 1-366 or an array of valid numbers if$compare
supports it.day
int|int[]Optional. The day of the month. Accepts numbers 1-31 or an array of valid numbers if$compare
supports it. Default empty.dayofweek
int|int[]Optional. The day number of the week. Accepts numbers 1-7 (1 is Sunday) or an array of valid numbers if$compare
supports it.
Default empty.dayofweek_iso
int|int[]Optional. The day number of the week (ISO). Accepts numbers 1-7 (1 is Monday) or an array of valid numbers if$compare
supports it.
Default empty.hour
int|int[]Optional. The hour of the day. Accepts numbers 0-23 or an array of valid numbers if$compare
supports it. Default empty.minute
int|int[]Optional. The minute of the hour. Accepts numbers 0-59 or an array of valid numbers if$compare
supports it. Default empty.second
int|int[]Optional. The second of the minute. Accepts numbers 0-59 or an array of valid numbers if$compare
supports it. Default empty.
}
$default_column
stringoptionalDefault column to query against. See WP_Date_Query::validate_column() and the 'date_query_valid_columns' filter for the list of accepted values.
Default'post_date'
.Default:
'post_date'
Source
public function __construct( $date_query, $default_column = 'post_date' ) { if ( empty( $date_query ) || ! is_array( $date_query ) ) { return; } if ( isset( $date_query['relation'] ) ) { $this->relation = $this->sanitize_relation( $date_query['relation'] ); } else { $this->relation = 'AND'; } // Support for passing time-based keys in the top level of the $date_query array. if ( ! isset( $date_query[0] ) ) { $date_query = array( $date_query ); } if ( ! empty( $date_query['column'] ) ) { $date_query['column'] = esc_sql( $date_query['column'] ); } else { $date_query['column'] = esc_sql( $default_column ); } $this->column = $this->validate_column( $this->column ); $this->compare = $this->get_compare( $date_query ); $this->queries = $this->sanitize_query( $date_query ); }
Changelog
User Contributed Notes
You must log in before being able to contribute a note or feedback.