最近在研究织梦的系统,导航栏为显示顶级目录,但每点开一个顶级目录下显示,左边是顶级栏目下的所有栏目的栏目目录树,右边是这个顶级栏目的新闻列表,如下图:
DedeCMS如何通过顶级栏目获取栏目树
每点一个顶级栏目可以在页中获得所点栏目的所有信息,包括ID,typename等等栏目的信息.
{dede:field name='id' /}
这个就是得到当然页当前栏目的ID,如果当然点的是顶级栏目的话,这个ID就是TOPID了,如果点的是顶级栏目下的二级或三级栏目这个ID就不是TOPID了,这样就需要对这个ID进行判断一下,废话少说,直接在common.func.php中添加一函数,函数如下:
function gtype($id)
{
global $dsql;
global $dsqls;
$tags = '';
$sql = "Select * From `dede_arctype` where id='$id' "; /***通过ID查询信息SQL语句
$dsql->SetQuery($sql);
$dsql->Execute();
while($row = $dsql->GetArray())
{
$tag.= ($tag=='' ? ' <li><a href="'.$links.'" target="_blank"><strong>·</strong>'.$rows['typename'].'</a></li>': ' <li><a href="'.$links.'" target="_blank"><strong>·</strong>'.$rows['typename'].'</a></li>');
} //开源软件:Cuoxin.com
$tags.='<h2><a href='.$link.'>'.$row['typename'].'</a></h2>'.$tag; ------有序的排起来
}
return $tags;
}
最后在list_article.htm 中调些函数:
{dede:field name='id' function="gtype(@me)" /}
大型站长资讯类网站! https://www.0739zz.cn