Меня интересует, как другие люди справляются с навигацией на сайте. Не часть стиля или удобства использования, а часть поколения. Большинство веб-сайтов имеют своего рода «дерево навигации», которое отображается в форме одного или нескольких уровней меню - в какой форме вы сохраняете и обрабатываете это дерево? Самое простое решение - статический шаблон меню, примерно такой:
<ul id="menu">
<li><a href="…">One</a></li>
<li><a href="…">Two</a></li>
<li><a href="…">Three</a></li>
</ul>
Но это не очень гибко. Вы не можете просто отметить текущую страницу в меню, и нет простого способа показать или скрыть часть дерева меню в зависимости от текущей страницы. (Или это?)
Я придумал дерево навигации, что-то вроде этого:
- title: Fruits
nodes:
- title: Apples
- title: Oranges
- title: Bananas
- title: Music and Stuff
url: music
nodes:
- title: Classical
- title: Jazz
Это дерево загружается специальным классом Navigation
, который может обслуживать части навигации в зависимости от текущего пути запроса. Кажется, это работает немного лучше, но мне все же очень любопытны решения других людей.