Здравствуйте likbezz, на юкозовском форуме вы мне помогали с счетчиком в меню: http://forum.ucoz.ru/forum/23-37209-813741-16-1328935840
Quote
У меня сайт - доска объявлений. Сделал вертикальное раздвижное меню взамен стандартного, с разделами и категориями доски объявлений. Вопрос: возможно ли в меню для каждого раздела и категории отображать количество материалов?
Спасибо за помщь! Вот только не могу понять как тот скрипт с информером прикрутить к меню. Если не трудно прошу помощи.
Сообщение отредактировал likbezz - Суббота, 11.02.2012, 14:45
Конечно нет, это же массив. JavaScript массив. Его нужно обработать скриптом, сравнить ссылки и добавить к нужным пунктам, то же скриптом, блок с количеством материалов. Что-то типа такого: Меню вывода разделов с категориями...
Siver, Короче. Как создать информер, (это так, для всех остальных, кто не в танке) написано выше, точнее показан скриншот. Будем считать информер «Категории в JavaScript формате» есть. ... 1. Вставляем информер в шаблон, до меню, один раз. Информер вставляем оператором, как $MYINF2$ ...
После меню, вставляем следующий скрипт:
Code
<script type="text/javascript"> function setCatNumEnt(){ if(!window.uCatsOut)return; $('div.arrowlistmenu a').each(function(){ var a=this,ah=a.href,cArr=window.uCatsOut; if(!/\/board\//.test(ah))return; var t=ah.split('/'),id=t[t.length-1]||t[t.length-2],li=$(a).parent(); if(!isNaN(id)){ $.each(cArr,function(j){ if(cArr[j][0]==id){ li.append('<span class="catNumEnt">['+cArr[j][6]+']</span>'); } }); }; }); };setCatNumEnt(); </script>
или ссылку на него (Скрипт скачать, поменять ссылку):
likbezz, огромное тебе человеческое спасибо! На днях отправлю, то что обещал. Последний вопрос: возможно ли в том же меню, в заголовок раздела вставить кол-во материалов раздела?
))))) Ага, когда пригодится эта тема уже зарастёт новыми, более навороченными темами, да так, что хрен найдёшь ))) Проверено. Сам искал как выводил пол года назад меню из массива, насилу нашёл ))) И то не пригодилось ))) ...
Где: /board/184 - реальная ссылка в реальный раздел. Везде разная, естественно. То бишь, упаковываем текст в ссылку. Если не понятно - смотри исходник примера, там везде проставлены верные ссылки. ...
Что-то не выходит у меня вариант (Cats Array v3) Вот что получается: Вот мои стили:
Code
.arrowlistmenu{ width: 180px; /*width of accordion menu*/ }
.arrowlistmenu .menuheader{ /*CSS class for menu headers in general (expanding or not!)*/ font: bold 11px Arial; color: white; background: white url(/images/titlebar.png) repeat-x center left; margin-bottom: 10px; /*bottom spacing between header and rest of content*/ text-transform: uppercase; padding: 4px 1px 4px 10px; /*header text is indented 10px*/ cursor: hand; cursor: pointer; }
.arrowlistmenu .openheader{ /*CSS class to apply to expandable header when it's expanded*/ background-image: url(/images/titlebar-active.png); }
.arrowlistmenu ul{ /*CSS for UL of each sub menu*/ list-style-type: none; margin: 0; padding: 0; margin-bottom: 8px; /*bottom spacing between each UL and rest of content*/ }
.arrowlistmenu ul li{ padding-bottom: 2px; /*bottom spacing between menu items*/ position:relative; }
.arrowlistmenu ul li a{ color: #A70303; background: url(/images/arrowbullet.png) no-repeat center left; /*custom bullet list image*/ display: block; padding: 2px 0; padding-left: 19px; /*link text is indented 19px*/ text-decoration: none; font-weight: bold; border-bottom: 1px solid #dadada; font-size: 90%; }
.arrowlistmenu ul li a:visited{ color: #A70303; }
.arrowlistmenu ul li a:hover{ /*hover state CSS*/ color: #A70303; background-color: #F3F3F3; } div.arrowlistmenu span.catNumEnt{ position:absolute; top:1px; right:2px; font:normal 10px/1.1 Tahoma,sans-serif; color:#999; } div.arrowlistmenu .menuheader span.catNumEnt{ top:4px; right:3px; color:#FFF; font-weight:700; }
вернул все назад, пока:
.arrowlistmenu{ width: 180px; /*width of accordion menu*/ }
.arrowlistmenu .menuheader{ /*CSS class for menu headers in general (expanding or not!)*/ font: bold 11px Arial; color: white; background: white url(/images/titlebar.png) repeat-x center left; margin-bottom: 10px; /*bottom spacing between header and rest of content*/ text-transform: uppercase; padding: 4px 1px 4px 10px; /*header text is indented 10px*/ cursor: hand; cursor: pointer; }
.arrowlistmenu .openheader{ /*CSS class to apply to expandable header when it's expanded*/ background-image: url(/images/titlebar-active.png); }
.arrowlistmenu ul{ /*CSS for UL of each sub menu*/ list-style-type: none; margin: 0; padding: 0; margin-bottom: 8px; /*bottom spacing between each UL and rest of content*/ }
.arrowlistmenu ul li{ padding-bottom: 2px; /*bottom spacing between menu items*/ position:relative; }
.arrowlistmenu ul li a{ color: #A70303; background: url(/images/arrowbullet.png) no-repeat center left; /*custom bullet list image*/ display: block; padding: 2px 0; padding-left: 19px; /*link text is indented 19px*/ text-decoration: none; font-weight: bold; border-bottom: 1px solid #dadada; font-size: 90%; }
.arrowlistmenu ul li a:visited{ color: #A70303; }
.arrowlistmenu ul li a:hover{ /*hover state CSS*/ color: #A70303; background-color: #F3F3F3; } div.arrowlistmenu span.catNumEnt{ position:absolute; top:1px; right:2px; font:normal 10px/1.1 Tahoma,sans-serif; color:#999; }
likbezz, проблема появилась. Сегодня добавили два объявления о покупке дачи не в тот раздел. Перенес сам в нужный раздел одно из объявлений, точнее из "недвижимость продажа" в "недвижимость покупка" из первого раздела счетчик удалил его, а в том в который перенес не добавил. Перенес назад, не хочет считать.
Прошло некоторое время и счетчик сработал видимо нужно какое то время. Теперь все нормально.