- Автор темы
- #1
Мне необходимо сделать развернутое древо категорий с подкатегориями на главной.
Долго рылся в поисках решения задачи. На этом форуме ниодного внятного ответа, а плодящихся вопросов тьма.
Решение нашел на официальном форуме. Вот так его реализовал пользователь webcomplit:
1. Вместо
вставляем в нужном вам месте
2. Идем в /kernel/includes/smarty/plugins/ и создаем там файл function.newtree.php следующего содержания:
:az:
Долго рылся в поисках решения задачи. На этом форуме ниодного внятного ответа, а плодящихся вопросов тьма.
Решение нашел на официальном форуме. Вот так его реализовал пользователь webcomplit:
1. Вместо
Код:
<!-- cpt_container_start -->{cpt_category_tree}<!-- cpt_container_end -->
Код:
<!-- cpt_container_start -->{newtree}<!-- cpt_container_end -->
2. Идем в /kernel/includes/smarty/plugins/ и создаем там файл function.newtree.php следующего содержания:
Код:
<?php
function smarty_function_newtree($params, &$smarty){
$disp='';
$disp.='<ul>';
$sql='SELECT categoryID, slug, parent, '.LanguagesManager::sql_prepareField('name').' AS name from '.CATEGORIES_TABLE. ' where parent=1 order by name';
if($r=mysql_query($sql))
while($res=mysql_fetch_assoc($r)){
$disp.='<li class="parent';
if($_REQUEST['categoryID'] == $res['categoryID']) $disp.='_current';
$disp.='"><span class="bullet"> </span><a href="?categoryID='.$res['categoryID'].'">'.$res['name'].'</a></li>';
$disp.=subcat($res['categoryID']);
}
$disp.='</ul>';
return $disp;
}
function subcat($parid){
$disp='';
$sql='SELECT categoryID, slug, parent, '.LanguagesManager::sql_prepareField('name').' AS name from '.CATEGORIES_TABLE. ' where parent='.$parid.' order by name';
if($r=mysql_query($sql))
while($res=mysql_fetch_assoc($r)){
$disp.='<li class="child';
if($_REQUEST['categoryID'] == $res['categoryID']) $disp.='_current';
$disp.='"><span class="bullet"> </span><span class="tab"> </span><a href="?categoryID='.$res['categoryID'].'">'.$res['name'].'</a></li>';
$disp.=subcat($res['categoryID']);
}
return $disp;
}
?>
:az: