Three layers, in order
A navigation link in the site chrome is resolved from up to three places. Later layers override earlier ones:
- The template default — a literal address written into the site's own template files. This is the fallback, used only when nothing else supplies a value.
- The menu — if a menu exists for that position, the chrome is built from its elements and the template literals are ignored entirely.
- Site data — named values configured for the site, which can override individual addresses on top of everything else.
Why this catches people out
The override is silent. Nothing warns you that a menu is shadowing a template default, so a link can point somewhere you never configured and the file you would naturally open to fix it is not the file in effect.
The symptom is specific and recognisable: you change a value, you republish, and the link does not move.
Where to look, in order
When a nav link is wrong, work down the layers rather than up:
- Check Site data first for a value with that name — it beats everything.
- Then check whether a menu exists for that position, and read its elements.
- Only if neither supplies the address is the template literal responsible.
Adding a link
Once a menu exists, add the link there. Editing the template to add an item to a menu-driven navigation has no effect at all, because the template branch is not the one running.