Pages
“Pages” are filters that determine what parts of your application a particular talking point or action should appear on. This allows you to show relevant content as the demo progresses no matter what order the features are shown in.
The pages section of the app gives you a list of all pages and where they are used. To create a new page press “Add a page”. Note: you can also create a new page inline when you’re editing an action or talking point.
Adding a page
Pages have 2 attributes:
- Page name references the part of your application this page will filter on
- URL structure contains the filter criteria to determine which URLs in your app will display content limited to this page. There are 5 ways to filter, all of which take a string:
- contains will show content on any URLs that have the string anywhere in the URL
- starts with will only show content on any URLs that have the string at the start. This is useful if you have specific subdomains.
- ends with will only show content on any URLs that have the string at the end. This is useful if there are unique identifiers you want to avoid.
- matches exactly requires the entire URL (from http…) to match
- matches regex is an advanced option that treats the string as a regular expression
Regex: using regular expressions
Sometimes your page structure is too complicated to handle with a simple “contains” statement, in those cases you may need to write a regular expression (regex).
Regular expressions have some special characters like [](|)\.?*
that dramatically change what happens when matching a string.
Here are some examples:
- To match across different strings you can use brackets “()” and a pipe “|”. For instance to match
user_advanced
ORuser_settings
you could use the regexuser_(advanced|settings)
. You can use the pipe “|” on its own too, so the regexuser_advanced|user_settings
matches exactly the same strings. - To match a string where the part in the middle doesn’t matter, you can use “.". For instance to match
user/123/settings
ORuser/9/settings
you could use the regexuser/.*/settings
. “.” means any character and "” means 0 or more times so this would also matchuser//settings
anduser/avocado/settings
– if your app happens to have those you can douser/[0-9]+/settings
:) - To match only strings with certain characters, you can use square brackets “[]”, so to match only numbers you can use
[0123456789]
or the shortcut[0-9]
. - All strings are valid regex’s, and if they don’t have any special characters then they’ll work like a “contain”. So
regex: dashboard
is exactly the same ascontains: dashboard
Regular expressions are very powerful and these examples only scratch the surface. If you find yourself constructing a very complicated regex, please let us know and we’ll try to help: [email protected]