# Dynamic Pages

*Article Topics:* [*Pages*](/getting-started/common-topics/pages.md)*,* [*Blocks*](/getting-started/common-topics/blocks.md)

{% hint style="info" %}
**Please Note:** This article contains Information on how the CMS App handles getting data from a Set List Block, Model List Block, or Metadata List Block to dynamically display content on a page with a Set View or Model View page.&#x20;
{% endhint %}

This article explains how to create a smooth experience for users by linking metadata types, such as categories or tags, to filtered content pages using dynamic URL parameters.

## Dynamic Pages

Dynamic pages work by passing a unique identifier (ID or Slug) of a content set, model, or metadata value through the page URL when a user clicks on an element in a list.

This method is commonly used with the **Metadata List Block**, **Set List Block**, and **Model List Blocks**. That value is then used on the destination page by a **Set View Block** or a **Model View Block** to filter content dynamically based on the ID or Slug in the URL.

Let's take a video list and a video gallery as an example, and walk through the process from a user's perspective.

### **A list of possibilities**

On the **Videos** page provided with the Helpful Hands Tour Theme, there is a Set List Block with the Click Destination on the Design tab set to Video Set (/video/:slug).&#x20;

Once a visitor clicks on a set in the set list, they are taken to the /video/:slug page with the slug of the content set in the URL.&#x20;

### **Destination Page**

The page in your CMS, which in this case is the **Video Set** page, contains a **Set View Block** filtered to the ID or Slug in the URL. You'll notice that there is only a single video set page in the Helpful Hands Theme. This is because of the dynamic parameter in use, meaning you don't have to make a page for every content set in your CMS.

```
/video/:slug
```

The "**:slug"** part will be replaced with the content set's name.&#x20;

## Related Articles

{% content-ref url="/pages/2WBaOGctsVmCNSqY6yfm" %}
[Themes](/content-management/member-areas-and-tours/themes.md)
{% endcontent-ref %}

{% content-ref url="/pages/urnU6zhpVkCNfXHocNBW" %}
[Set List Block](/content-management/member-areas-and-tours/themes/block-types/set-list-block.md)
{% endcontent-ref %}

{% content-ref url="/pages/Fns3udit6BYx3GkOiHU4" %}
[Set View Block](/content-management/member-areas-and-tours/themes/block-types/set-view-block.md)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.toomuchmedia.com/content-management/member-areas-and-tours/customizing-your-theme/dynamic-pages.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
