Навигация
Главная
Бесплатные шаблоны dle
Платные шаблоны dle
Бесплатные модули dle
Хаки dle
Скачать DataLife Engine
Заработок для Web мастеров
Обмен webmoney на Privat24
Контакты
Rss
Вход на сайт
  Логин
  Пароль
Популярные новости
HTML шаблон для информационного портала
Модуль "Авторизация на сайте"
Scenist
Шаблон "Carbon"
календарь:
«    Май 2012    »
ПнВтСрЧтПтСбВс
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
Архив новостей
Апрель 2012 (12)
Март 2012 (7)
Февраль 2012 (34)
Январь 2012 (36)
Декабрь 2011 (13)
Ноябрь 2011 (10)

Считаем количество новостей каждой категории в меню навигации
Появилась у меня необходимость проставить в главном меню количество новостей за сегодня и общее количество по каждой категории. Мне показалось, это будет удобно для посетителей, да и самому приятно видеть. Искал в инете хак или модуль и ничего похожего не нашел. Решил сделать сам. Получилось вот так

Считаем количество новостей каждой категории в меню навигации


Хак имеет одно ограничение - работает только с меню, которое на имеет подкатегорий

Итак, начнем.

1) Находим и открываем файл index.php, ищем код

$tpl->set ( '{AJAX}', $ajax );


выше этой строки копипастим код


/****Навигация***********/
$sql_result = $db->query("select ct.name,
                                 ct.alt_name,
                                 ct.posi,
                                 (select count(*) from ". PREFIX ."_post ps where ps.category = ct.id AND (DATE_FORMAT(date, '%Y%m%d')=CURDATE()) AND approve = '1') as new_,
                                 (select count(*) from ". PREFIX ."_post ps where ps.category = ct.id AND approve = '1') as allnews_
                          from ". PREFIX ."_category ct
                          order by ct.posi"
                          );

$main_menu='';
while($row = $db->get_row($sql_result))
{
    $main_menu.='<div><a href="'.$config['http_home_url'].$row['alt_name'].'" >'.$row['name']."&nbsp;&nbsp;&nbsp;".$row['new_']."/".$row['allnews_']."</a></div>";
}
$tpl->set('{main_menu}', $main_menu);
/*****************************/


2) Как формируется ссылка меншки.. Пункт меню формируется в коде


$main_menu.='<div><a href="'.$config['http_home_url'].$row['alt_name'].'" >'.$row['name']."&nbsp;&nbsp;&nbsp;".$row['new_']."/".$row['allnews_']."</a></div>";


тут
- переменная $config['http_home_url'] возвращает значение "http://ваш_домен/" (без кавычек)
- переменная $row['alt_name'] - название категории латиницей (например: soft)
- переменная $row['name'] - это название категории кирилицей (например: Программы)
- $row['new_'] - количество новостей данной категории за сегодня
- $row['allnews_'] - общее количество новостей по данной категории

В код можно вставить класс, согласно которому, будет отображаться менюшка. Например


$main_menu.='<div><a href="'.$config['http_home_url'].$row['alt_name'].'" class="mainmenu">'.$row['name']."&nbsp;&nbsp;&nbsp;".$row['new_']."/".$row['allnews_']."</a></div>";


В приведенном примере ссылка будет вида

_http://ваш_домен/soft

3) Открываем шаблон /templates/ваш_шаблон/main.tpl

В нужном месте ставим {main_menu}

4) работающее меню можно посмотреть на _http://1024kbytes.com



31 июля 2009 добавил kand2004
     просмотров 6688   комментариев (6)

написал KingStiLL    3 августа 2009 22:42   ICQ    



 Группа: Посетители
 Регистрация: 19.06.2009
 Публикаций: 0
 Комментариев: 1
А сделай для многоуровнего плз))) оч над)


        

написал kand2004    4 августа 2009 00:04   ICQ 271522951   



 Группа: Посетители
 Регистрация: 6.04.2009
 Публикаций: 4
 Комментариев: 4
Есть продолжение хака, где появилась возможность добавлять количество новостей в меню с любым количеством подкатегорий, любой вложености

Смотрите на
_http://1024kbytes.com/articles/2322-kolichestvo-novostej-v-menyu-navigacii-dlya
-dle.html


        

написал soulman    5 августа 2009 16:58   ICQ    



 Группа: Посетители
 Регистрация: 10.05.2009
 Публикаций: 0
 Комментариев: 3
овигенно спасибо =))) и еще вопросик, а как прописать, чтоб перед новым постом стоял плюс, чтоб он показывался, а то не получается=\


        

написал Maxter    16 августа 2009 07:50   ICQ    



 Группа: Посетители
 Регистрация: 25.04.2009
 Публикаций: 0
 Комментариев: 21
После этого хака пришло письмо от хостера, что перегружаю базу более 30%. Просьба удалить следующие медленные запросы..... Эти запросы принадлежат этому хаку. Так что думайте, ставит или нет.


        

написал kand2004    3 сентября 2009 20:43   ICQ 271522951   



 Группа: Посетители
 Регистрация: 6.04.2009
 Публикаций: 4
 Комментариев: 4
Появилась новая версия хака, где уже реализовано кеширование и еще несколько новшеств.
Смотрите на
_http://1024kbytes.com/articles/3673-xak-dlya-dle-kolichestvo-novostej-v-menyu.h
tml

Спасибо за комментарии!

Цитата: soulman
овигенно спасибо =))) и еще вопросик, а как прописать, чтоб перед новым постом стоял плюс, чтоб он показывался, а то не получается=\

Все очень просто. В новой версии есть этот вариант отображения. Если не получиться, пишите на мыло или в личку

Цитата: Maxter
После этого хака пришло письмо от хостера, что перегружаю базу более 30%. Просьба удалить следующие медленные запросы..... Эти запросы принадлежат этому хаку. Так что думайте, ставит или нет.

была такая большая недаработка - отсутствие кэширования. В новой версии эта недаработка исправлена и нагрузка на базу должна существенно упасть.


        

написал mojokpyt    11 июля 2010 15:50   ICQ 251064379   



 Группа: Посетители
 Регистрация: 11.07.2010
 Публикаций: 0
 Комментариев: 4
Хак отлично работает на движке 8.5 Пример сайта: www.progi.org


        

Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.


Восточный эротический массаж киев в любое время суток.
Сайт для туристов дешевые авиабилеты в Уругвай.









Rambler's Top100

Яндекс цитирования