Cannot access values from get_query_var() in Wordpress

php, wordpress

Solution

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 vars
add_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

Problem

I am busy developing a WordPress application and I need to be able to pass url parameters using WordPress functions. I use `add_query_arg()` function to add a url parameter. However, when I try to get the passed value in the other page using `get_query_var()` nothing gets returned. When I used `$_GET['var_name']` the values gets returned. What is the possible cause of this situation? I can successfully add arguments to the url but I am not able to access them.

Original source