Writing page path expressions
Path expressions allow you to select a set of pages from the content tree of Kentico websites. The expressions are based on the alias path values of pages. You can use two types of path values:
- Exact paths of individual pages
- Expressions containing special characters that specify multiple pages or relative paths
You need to use path expressions in the Path property of web parts or controls that load data from pages (page data sources, page listings with built-in data sources, navigation components).
Using wildcard characters (% and _)
The % wildcard represents any number of characters.Add the wildcard to the end of the path to select all pages under the specified section of the site.
Examples:
- / - only the root page
- /% - all pages
- /Products - only the Products page
- /Products/% - all child pages under the Products page
The _ wildcard represents a single character. For example:
- /Product_ - selects pages /ProductA, /Product1, Product2 etc.
Escaping wildcards in paths
If you need to use the wildcards as standard characters inside path expressions, enclose the character inside brackets ([ ]). For example:
- /Special[_]Offers - selects the Special_Offers page
Using relative paths
You can use relative paths expressions to select child pages or parent pages.
Examples:
- . - the current page’s path
- .. - the path of the current page’s parent
- ./Product - page Product under the current path
- ../Product - page Product under the parent page of the current path
- ./% - all pages under the current path (or selection of the current page, see Leaving the Path value empty below)
- ../% - all pages under the parent page of the current path
Leaving the Path value empty
If you leave the path value empty, the behavior depends on the type of the component and other variables.
Navigation components
For navigation components (such as the CSS list menu web part), an empty value always sets the path to all pages (equivalent of /%).
Standard page data sources
General web parts and controls with page data sources perform one of the following actions if you leave the Path property empty:
- Selection of the current page - the component loads and displays only the current page using the Selected item transformation (if specified).
- Loading of child pages - equivalent of <current alias path>/%. All filtering options specified for the data source still apply.
The behavior depends on the following conditions:
* Whether the listing component’s Page types (ClassNames) property includes the current page’s page type. Note: An empty value includes all page types.
** If the current page type has the Behaves as Page (menu item) type flag enabled (Page types -> Edit the page type -> General).
Page type match (*) |
Behaves as Page (menu item) type flag (**) |
Empty path behavior |
|
|
Selection of the current page |
|
|
Loading of child pages |
|
|
Loading of child pages |
|
|
The data source does not load any data at all |
For standard page data sources, the ./% path expression works exactly the same way as an empty path value.
Getting parts of the current path
You can use special expressions to extract parts of the current page’s path.
- {0} - the alias of the page on the first level of the current path
- {1} - the page alias of the current path’s second level
- …
For example, if the page path is: /Company/Careers/USA-Branch/Development/QA-Engineer
- {0} = Company
- {1} = Careers
- {3} = Development
Path examples:
- /{0}/{1}/% - all pages under the second level of the current path
- /{0}/{1}/Details - page Details on the third level of the current path
Note: If you attempt to extract a level that does not exist in the current page’s path:
- The expression returns an empty value.
- If there is a slash (/) after the expression, the system removes it when resolving the overall path.