Something Else

cms-edit · Highlander Health

← All playbooks · Raw API

routing

# Routing

URL and content routing rules for this site.

Highlander public article and person **markdown** URLs are singular (`/resource/{slug}.md`, `/person/{slug}.md`). They do **not** match listing-base `ARTICLES_SLUG` (`resources`) or `PEOPLE_SLUG` (`people`). This file is a **site playbook** (`docs/cms-editor/highlander/routing.md`) so `cms-edit editor-pack generate` keeps those paths instead of the generic listing-base output.

## Homepage

- **CMS slug (Contentful):** `index`
- **Open in cms-edit:** `--page-slug /` or `--page-slug /index`
- **Public URL:** `/` on the live site
- **Sitemap displays:** `/index` (formatting only — same page as `/`)

## Article paths

- **Listing / type index:** `/resources/` (`ARTICLES_SLUG`) — markdown `/resources.md` rewrites to article type `resource`
- **Article detail (public):** `/resource/{slug}/` — markdown `/resource/{slug}.md` rewrites to `/markdown/articles/resource/{slug}`
- **Do not** use `/resources/{type}/{slug}.md`
- **Primary tag in URL:** no (flat article URLs)
- **Article type index enabled:** true (listing only; detail URLs omit the type segment)

## Tags and people

- **Tags listing:** `/tags/` (`TAGS_SLUG`) — markdown `/tags.md`
- **Tag detail (public):** `/tag/{slug}/` — markdown `/tag/{slug}.md`
- **People listing:** `/people/` (`PEOPLE_SLUG`)
- **Person detail (public):** `/person/{slug}/` — markdown `/person/{slug}.md`
- **Default topic (untagged articles):** `other`

## Feature flags

- **enableTag:** true
- **enableTagsIndex:** true
- **enablePerson:** true
- **enableArticleTypeTagIndex:** false
- **articlesBaseIsPage:** false