WordPress.org

Make WordPress Core

Opened 5 years ago

Last modified 5 years ago

#14600 closed enhancement

Make $wp_query->query always be an array — at Initial Version

Reported by: scribu Owned by:
Milestone: 3.1 Priority: normal
Severity: normal Version:
Component: Query Keywords: has-patch commit
Focuses: Cc:

Description

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');

Change History (0)

Note: See TracTickets for help on using tickets.