Add Dynamic Variable To A WordPress Page

Create a Page Template

Create a page template for stores and apply it to a page.

$stores = get_query_var('stores');

Add a Rewrite Tag

In your functions.php add a rewrite tag, which lets WordPress know to look for the specific tag

function custom_rewrite_tag() {
  add_rewrite_tag('%stores%', '([^&]+)');
}
add_action('init', 'custom_rewrite_tag', 10, 0);

Add a Rewrite Rule

Now to format the URL and point it to the index.php with the vars, enter the following in your functions.php. Note: You have to update the page_id to the page_id of the stores page (it’s 12 in this example).

  function custom_rewrite_rule() {
    add_rewrite_rule('^stores/([^/]*)/?','index.php?page_id=12&stores=$matches[1]','top');
  }
  add_action('init', 'custom_rewrite_rule', 10, 0);

From there you can browse to /stores/south-dakota/ and the $stores variable in your page template will be “south-dakota”.

Thanks to stackExchange

Comments

So empty here ... leave a comment!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Sidebar