DLE движок для сайтов
Пытаюсь посчитать количество новостей в каждой категории. Проблема состоит в том, что все новости на сайте относятся к двум, а то и к большему количеству категорий. Поэтому подсчет дает неправильные (заниженные) цифры.


Вот какой код вставляю в index.php:

/* Подсчет количества новостей */
$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);

/* окончание подсчета количества новостей  */

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


Само собой, в шаблоне main.tpl

{main_menu}


Прошу помочь знатоков, что можно сделать в данном случае, и если нельзя ничего сделать, то есть ли другие решения задачи?

 Источник:dle-faq.pro, DLE

Источник: smartZone

Перейти на сайт

Другие материалы на сайте b.Z - Записки о гаджетах, людях и музыке