Навигация по блогу на любой вкус
Теперь можно переключаться между постраничной (через плагин pagenavi) и обычной навигацией («вперед-назад»). Так как я предчувствую что будут меня об этом спрашивать, пишу как сделано у меня:
В нужном месте темы вместо старого кода навигации вставляем это:
<div id="navigate1" style="display: none;"> <p align="center"><?php if(function_exists('wp_pagenavi')) { wp_pagenavi(); } ?><br /> </p> </div> <div id="navigate2" style="display: none;"> <p align="center"><?php posts_nav_link(' - ','« Вперед в будущее','Назад в прошлое »') ?> </p> </div> <p align="center"><a id="navswitch" href="#nav" onclick="toggleIcons();return false;">навигация</a></p> <script>setIcons();</script>
Также создаем файл скрипта, например у меня это nav.js и размещаем где то на сервере. Прописываем путь к скрипту в файле header.php вашей темы, например так:
<script language="Javascript" type="text/javascript" src="/nav.js"></script>
с таким содержанием:
function getCookie(name) { var prefix = name + "=" var cookieStartIndex = document.cookie.indexOf(prefix) if (cookieStartIndex == -1) return null var cookieEndIndex = document.cookie.indexOf(";", cookieStartIndex + prefix.length) if (cookieEndIndex == -1) cookieEndIndex = document.cookie.length return unescape(document.cookie.substring(cookieStartIndex + prefix.length, cookieEndIndex)) } function setCookie(name, value) { var argv = setCookie.arguments; var argc = setCookie.arguments.length; var expires = new Date(); expires.setTime(expires.getTime() + (24 * 60 * 60 * 1000 * 365)); var path="/"; var domain=null; var secure=false; argc=argc-2; if (argc!=-1) if (argc!=0) { expires=argv[2]; argc--; if (argc!=0) { path=argv[3]; argc--; if (argc!=0) { domian=argv[4]; argc--; if (argc!=0) secure=argv[5]; }; }; }; document.cookie = name + "=" + escape(value) + ((expires == null)? "": ("; expires=" + expires.toGMTString())) + ((path == null)? "": ("; path=" + path)) + ((domain == null)? "": ("; domain=" + domain)) + ((secure == true)? "; secure": ""); } function toggleIcons() { tobj=document.getElementById('navigate1'); tobj2=document.getElementById('navigate2'); lnkobj=document.getElementById('navswitch'); if (tobj.style.display!='none') {setCookie('inline2','yes');tobj.style.display='none';tobj2.style.display='';lnkobj.innerHTML='изменить вид навигации';} else {setCookie('inline2','no');tobj.style.display='';tobj2.style.display='none';lnkobj.innerHTML='изменить вид навигации';}; return false; } function setIcons() { tobj=document.getElementById('navigate1'); tobj2=document.getElementById('navigate2'); lnkobj=document.getElementById('navswitch'); if(getCookie('inline2')!='yes') {tobj.style.display='';tobj2.style.display='none';lnkobj.innerHTML='изменить вид навигации';} else {tobj.style.display='none';tobj2.style.display='';lnkobj.innerHTML='изменить вид навигации';} return false; }
Информация о вашем предпочтении сохраняется в cookie, поэтому при переходе по блогу настройка не сбивается.
За скрипт благодарю
Опубликовано 7 января 2008 в 22:26 Автор Lecactus
Связанные записи
2 комментария на запись “Навигация по блогу на любой вкус”
Интересная задумка. Только вот я все таки больше склоняюсь к PagaNavi и думаю что он проще и удобнее. Вобщем думаю что стандартный вариант не нужен :)
а мне наоборот :-), поэтому и поставил специально чтобы выбирали кому что удобнее