Perfecting Menus, Breadcrumbs and Paths

Menus, breadcrumbs, and path aliases have been core features since anyone can remember. Yet the core functionality is still pretty bad.

I'm a believer that:

- Beautifully structured URLs are an important part of your site's design 
- You should almost always include breadcrumbs and they should always be correct 
- You can display one breadcrumb and one path, and they should always be in harmony (two formats of the same structure)
- A site's navigation should all fit into a single tree
- The menu position, breadcrumb, and URL should all be in harmony within that one tree
- A URL should mimic a real directory structure, and be navigable
- If you have a page with more than one path or menu position, one path and menu position should be canonical

For many years I've fought with core's handling of paths, menus and breadcrumbs as it does not seem to support my beliefs. I've tried many, many different approaches. Finally I'm happy with my set of configuration, modules, core patches and philosophy, and would like to spread the technique as well as the passion for perfection in this critical aspect of your projects.

Slides: http://jodyhamilton.github.io/menus-n-paths-slides/menus-n-paths.html

Experience level: 
Intermediate
Speaker(s): 
Jody Hamilton

Session Tracks (DrupalCamp NJ 2015)