Дерево категорий для новостей

  • 1 Ответов
  • 1396 Просмотров

antonenkoT

  • Сообщений: 3
    • Просмотр профиля
Дерево категорий для новостей
« : 16 Декабря 2016, 17:01:26 »
Здравствуйте, друзья. Помогите написать вывод меню категорий в виде дерева. Пробую переписать код старой версии под новую 1.5 и ничего не получается. Возможно у кого-то есть уже готовая реализация


« Последнее редактирование: 16 Декабря 2016, 23:41:49 от antonenkoT »

antonenkoT

  • Сообщений: 3
    • Просмотр профиля
Re: Дерево категорий для новостей
« Ответ #1 : 17 Декабря 2016, 13:16:52 »
Сделайте лучше
defined('DNREAD') OR die('No direct access');

global $lang, $config, $api, $db, $basepref,$ro;
        $config;
$bc = NULL;
$vc = array();

if (defined('SETTING'))
{
   return $bs = array('blockname' => $lang['vcard']);
}

$bc.='<ul class="cd-accordion-menu animated">';
// Выбираем все активные моды кроме инфостраниц
$treeinq = $db->query("SELECT catname,catcpu,catid FROM ".$basepref."_catalog_cat
                       WHERE parentid=0
                       ORDER BY posit");
                     
                       
// Генерируем главные ветки
while($treeitem = $db->fetchrow($treeinq)){

$bc.='<li class="has-children">
   <input type="checkbox" name ="group-'.$treeitem['catid'].'" id="group-'.$treeitem['catid'].'">
         <label for="group-'.$treeitem['catid'].'">'.$treeitem['catname'].'</label>
      <ul>';

$treesub = $db->query("SELECT catname,catcpu FROM ".$basepref."_catalog_cat
                       WHERE parentid=".$treeitem['catid']."
                       ORDER BY posit");
// Генерируем вложеные ветки


while($sub = $db->fetchrow($treesub)){

    $bc.='<li><a href="'.$sub['catcpu'].'/">'.$sub['catname'].'</a></li>';

}
$bc.='</ul>
</li>';
}

$bc.='</ul>';

return $bc;