param($key = null, $default = null)

Fetches a Kirby URL parameter

  • $key (string)
    null returns an array of all values
  • $default (mixed)
    Default value if empty
  • return (string)

Additional to URL query variables you can set parameters via URL in Kirby in a more human readable way:

Those parameters are very handy when you want to build URL-based filters for your content.

Such parameters will be ignored by the router so the URL which will be fetched by Kirby in this case is

The parameters can be fetched in templates, snippets or controllers like this:

$tag  = param('tag');
$year = param('year');

You can even define a default value when a parameter is not set:

$tag  = param('tag', 'design');
$year = param('year', 2014);