I am trying to pass a parameter to a WordPress site using a URL - for instance:
www.fioriapts.com/?ppc=1
will be the URL.
I am intending to write a function in the functions.php file but the mechanics of how to extract a parameter in WordPress is beyond me. I am finding a lot of examples on how to add a parameter to a URL using the function add_query_arg()
but have found nothing on how to extract a parameter. Thanks in advance for any help.
The parameters from a URL string can be retrieved in PHP using parse_url() and parse_str() functions. Note: Page URL and the parameters are separated by the ? character. parse_url() Function: The parse_url() function is used to return the components of a URL by parsing it.
URL parameters are made of a key and a value, separated by an equal sign (=). Multiple parameters are each then separated by an ampersand (&).
Why not just use the WordPress get_query_var()
function? WordPress Code Reference
// Test if the query exists at the URL if ( get_query_var('ppc') ) { // If so echo the value echo get_query_var('ppc'); }
Since get_query_var can only access query parameters available to WP_Query, in order to access a custom query var like 'ppc', you will also need to register this query variable within your plugin or functions.php
by adding an action during initialization:
add_action('init','add_get_val'); function add_get_val() { global $wp; $wp->add_query_var('ppc'); }
Or by adding a hook to the query_vars filter:
function add_query_vars_filter( $vars ){ $vars[] = "ppc"; return $vars; } add_filter( 'query_vars', 'add_query_vars_filter' );
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With