I'm working on a complex website with multi locales, channels, structures and different designs per page. And the site needs a breadcrumb path.

My client needs to manage and add items the to menu.

This is a simple overview of the navigation:

  • Home
  • About us
    • Profile
    • History (different template)
    • Staff (listing with entry url's)
    • Jobs (listing)
    • etc
  • investor relations
    • finance
    • results (with iframe)
  • portfolio
  • press (custom url to external page)
  • etc

So no hard coding. What is the best solution to build this?

I think this is still a difficult thing in Craft. We need something like Navee or Structure (expression engine) to have a client friendly navigation system.

I've tried CraftNav. But it is still too simple.

  • Johannes - any suggestions on how we can extend CraftNav to meet your needs? Aug 13, 2014 at 17:19
  • 1
    I would love to see a combination with CraftNav and Link It. Link to: Entries Assets Emails Phone numbers Custom URLs. + a breadcrumb and active state feature and full control over the output HTML. Aug 13, 2014 at 17:41

2 Answers 2


Not sure I'm the best person to answer this having only built one Craft site but here goes.

I've created a Structure called Main Menu which has three Entry Types. (Entry types were the key for me when doing this)

A Structure allows drag and drop ordering and hierarchal navigation ordering for parent > child relationships.

  1. Entry Link
  2. Asset Link
  3. External Link

Entry Link


Asset Link


External Link


Big, big (two bigs!) NavEE fan here, CraftNav has huge potential to replicate it but it's still a tad early when I tried it.

In short Entry Types were the key for me.

Note: For my own sanity at a later date it would be good to read this post on how to tell if your Structure Navigation has child elements.

Not sure if this helps but hope it does.

  • Does the main menu structure have the option on to have their own URLs? or is it inactive? Aug 8, 2014 at 15:39
  • 1
    Entry Link just uses the link as-is. The template would be whatever you setup when you created the entry. The External Link could link internally if you wish so I assume some kind of custom route could do the job. I'm sure I saw some posts here somewhere on choosing you template dynamically but I may have been dreaming. Aug 8, 2014 at 15:43

Please take a look at this post on how to build a navigation (like NavEE, Structure, Taxonomy) using a Craft Structure. It also has some code-example for your template: Would you use a Structure as navigation over multiple sections (channel entries, indexes and singles)?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.