Opened 3 years ago
Last modified 3 years ago
#14600 closed enhancement
Make $wp_query->query always be an array — at Version 1
| Reported by: |
|
Owned by: | |
|---|---|---|---|
| Priority: | normal | Milestone: | 3.1 |
| Component: | Query | Version: | |
| Severity: | normal | Keywords: | has-patch commit |
| Cc: | Denis-de-Bernardy |
Description (last modified by scribu)
Currently, if you do this:
$query = new WP_Query( array( 'tag' => 'foobar', 'year' => 2010 ) );
$query->query will be array( 'tag' => 'foobar', 'year' => 2010 ).
If you do
$query = new WP_Query('tag=foobar&year=2010');
$query->query will be tag=foobar&year=2010.
I think it would be more useful if $query->query will be an array in both cases. Currently, if you want to check that variable from a filter, you always have to call wp_parse_args() yourself:
function my_posts_where($sql, $wp_query) {
$wp_query->query = wp_parse_args($wp_query->query);
if ( isset($wp_query->query['some-var'] )
// do something
...
}
add_filter('posts_where', 'my_posts_where');
Note: See
TracTickets for help on using
tickets.
