Three layers, in order

A navigation link in the site chrome is resolved from up to three places. Later layers override earlier ones:

  1. 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.
  2. The menu — if a menu exists for that position, the chrome is built from its elements and the template literals are ignored entirely.
  3. 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.