Having different menus on different pages

There are many instances when you need different menus on different pages.

For example, you might have a one-page website but want a dedicated shop or contact page. In this case, the navigation links from the top menu are unusable on those separate pages (e.g., contact or shop) since they are set to guide users through different sections on the same page (e.g., your home page).

Another case might be when users are on your shop page. Since that page has a different role than the rest of the website, you might want to use the top menu to display your product categories or other relevant information for those seeking to make a purchase.

To achieve the desired result, you need to create a different menu for each of these scenarios and display them only on those pages.

How navigation works on your Pixelgrade LT site

Your menu is a Navigation block that lives inside the Header template part, and you edit it in the Site Editor (Appearance → Editor).

By default, every page shares that same header. To show a different menu on a particular page, you give that page its own template with its **own header and menu** — all built into WordPress, with no extra plugin or code.

Step 1 — Open the Site Editor

  1. From your WordPress dashboard, go to Appearance → Editor to open the
  2. Site Editor.

Step 2 — Create your second menu

  1. In the Site Editor's left panel, open Navigation. This is where your
  2. site's menus live.

  1. Create a new menu for the special page — for example, name it
  2. "Contact page menu" or "Shop menu".

  1. Add the links you want this menu to show, then Save.

If you only need to rename or reorder the links you already have, you can do

that here too — see our guide on editing menus in WordPress.

Step 3 — Give the special page its own template

  1. Still in the Site Editor, open Templates, click Add New Template, and
  2. choose to create a template for a specific Page.

  1. WordPress will base the new template on your existing page layout, including
  2. the current header.

Step 4 — Swap in your second menu on that template

  1. In the new template, click the header at the top of the canvas to select
  2. it. If the header is a shared (synced) part, detach it for this template first so your change won't affect every other page.

  3. Point the header's navigation at the second menu you made in Step 2.
  1. Click Save, confirm the right template part is ticked, and Save again.

Step 5 — Assign the template to your page

  1. Go to Pages, open the page that needs the different menu, and in the
  2. page settings open the Template panel.

  3. Choose the template you created in Step 3, then Update the page.

Step 6 — Check the front end

  1. Visit the page on your live site and confirm it now shows the second menu,
  2. while the rest of your site keeps the original one.

A simpler option to consider

Per-page menus are a bit involved on a block theme. If you only have one or two odd pages, a lighter approach often works just as well:

  • Keep one clear main menu that includes the important destinations (Home,
  • Shop, Contact), so every page is reachable from anywhere.

  • On a one-page site, add a small "Back to home" link or button to your
  • standalone shop/contact pages instead of a whole separate menu.

Need a hand?

If you get stuck deciding which template to use or how to swap the header menu, open Appearance → Pixelgrade Design → Help to search the documentation or reach support.

Updated on July 1, 2026

Can't find what you’re looking for? Ask a human.

We're a small team of real people providing real help. Send us an email at [email protected] and we will give you a helping hand.