Главная | Поиск | Форум | Регистрация | Вход | Sitemap
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Количество новостей в меню навигации v.3.0
RaZoRДата: Четверг, 02.12.2010, 21:50 | Сообщение # 1

Сообщений: 62
Награды: 0

[ 7 ]

Offline
Позволяет проставить количество новостей за сегодня и общее количество по конкретной категории в меню навигации или любом другом месте сайта. Есть возможность ставить количество новостей в каком угодно виде. Кроме того можно проставлять количество новостей в подкаталогах любой вложености. Единственное, что нужно знать для этого - это id категории.

Что нового:
1) кэширование количества новостей;
2) возможность убирать «0», если новостей за сегодня по категории нет;
3) исправлен баг неточного подсчета количества новостей, если новость в нескольких категориях.

УСТАНОВКА для версий DLE8.2-8.5

Code
(select count(*) from ". PREFIX ."_post ps where (ps.category REGEXP concat( '^(' ,ct.id, ',)' ) or ps.category REGEXP concat( '(,' ,ct.id, ',)' ) or ps.category REGEXP concat( '(,' ,ct.id, ')$' ) or ps.category=ct.id) AND approve = '1') as allnews_  
from ". PREFIX ."_category ct"  
);  
$count_news_of_category = '';  
while($row = $db->get_row($sql_result))  
{  
$t = $row['new_'].'|'.$row['allnews_'];  
$tpl->set('{count_categ_'.$row['id'].'}', $t);  
$count_news_of_category .= $row['id'].'#'.$t.'¦';  
}  
/**В кэш **/  
create_cache( 'count_news_of_category', $count_news_of_category);  
$db->free();  
}  
else  
{  
//достанем количество новостей из кэша  
$arr_newscount = explode('¦', $count_news);  
for ($i = 0; $i <= count($arr_newscount) - 2; $i++)  
{  
$arr_onenews = explode('#', $arr_newscount[$i]);  
$tpl->set('{count_categ_'.$arr_onenews[0].'}', $arr_onenews[1]);  
}  
}  
/************************************/  

?>
 
  • Страница 1 из 1
  • 1
Поиск:

Создать сайт бесплатно
Хостинг от uCoz