WordPress get_query_var() WordPress get_query_var() wordpress wordpress

WordPress get_query_var()


I managed to get the get_query_var() function to work.To use the two functions successfully, you need to add the query vars to wordpress's query vars array. Here is a code sample.

function add_query_vars_filter( $vars ){  $vars[] = "query_var_name"; return $vars;}//Add custom query varsadd_filter( 'query_vars', 'add_query_vars_filter' );

Now you can use get_query_var() and add_query_arg() as follows:

Add the query var and value

add_query_arg( array('query_var_name' => 'value'), old_url );

Get the query var value

$value = get_query_var('query_var_name');

More information and code samples can be found at the Codex: get_query_var and add_query_arg


To troubleshoot, what variables are being used in the request use following code

global $wp_query;var_dump($wp_query->query_vars);


If you check out the Codex, you'll see you actually need to do some fiddling to get WP to start reading your query string.

Codex (under Custom Query Vars)

Excerpt:

In order to be able to add and work with your own custom query vars that you append to URLs (eg: "mysite com/some_page/?my_var=foo" - for example using add_query_arg()) you need to add them to the public query variables available to WP_Query. These are built up when WP_Query instantiates, but fortunately are passed through a filter 'query_vars' before they are actually used to populate the $query_vars property of WP_Query.