Wordpress и подсветка навигации
28 Mar, 2005Делюсь своим недавним простым, но все же полезным решением проблемы подсветки навигации, типа "я тут". По крайней мере вкупе с этим строить сайты на базе Wordpress, именно сайты, а не блоги, может оказатсья проще. Вобщем ближе к делу.
В чем проблема?
Например у вас есть блог на ВП, а теперь вы решили создать кроме главной( она же блог), еще пару статичных страниц (или не очень статичных). Вот как у меня например. Создал я "Про это", "Ресурсы" и "Архив". Резонно было бы после всего этого сделать навигацию между этими разделами сайта.Сделать это раз плюнуть - навигация то не меняется от страницы к странице. Но тут как всегда приходит мысль о подсветке нужного раздела. То есть если вы на главной в навигации выделяется меню "Блог", и в таком роде. Вот тут и появляется маленькая проблемка.
Решение
Решение чрезвычайно простое. Даже название решение - это громко сказано. :) Короче говоря. Так как я использую систему темплейтов для своего сайта. ( разложенный на мелкие куски макет странички сайта ) то все изменения коснулись лишь файла header.php.Определение положения
Для того что бы знать какой элемент навигации подсветить нужно знать где мы находимся. Вот такой простой код помогает и лечит от всех проблем:- if(is_home()) {
- $homid=" id="current"";
- }
- if(is_archive() || is_single()) {
- $arcid=" id="current"";
- }
- if(is_page('Стоит посетить')) {
- $resid=" id="current"";
- }
- if(is_page('Про это')) {
- $aboid=" id="current"";
- }
Навигация
Ну а теперь дело за малым собственно навигация начинает выглядеть примерно так- <ul>
- <li><a href="/"<?=$homeid;?>>Блог</a></li>
- <li><a href="/archive/"<?=$arceid;?>>Архив</a></li>
- <li><a href="/resources/"<?=$resid;?>>Ресурсы</a></li>
- <li><a href="/about/"<?=$aboid;?>>Про это</a></li>
- </ul>
id="current"
будет у той странички на которой мы находимся. Остальное дело стилей. Как раз на моём блоге работает примерно такая схема.
10 комментариев к “Wordpress и подсветка навигации”