显示效果如下:
实际效果也可以参见本站
帝国CMS7.5导航自动显示一级栏目和二级栏目并高亮代码,并根据是否有二级栏目,设定一级栏目样式。
实现代码如下:
<div class="header">
<div class="nav">
<div class="logo">
<a href="/"><img src="images\logo.png" alt=""></a>
</div>
<div class="menu-toggle" id="toggle">
<span></span>
<span></span>
<span></span>
</div>
<ul class="menu" id="mobile-menu">
<li class="<?=$GLOBALS[navclassid]==0?'select':''?>"><a href="/">首页</a></li> //判断是否是首页
[e:loop={"select classid,classname,islast from {$dbtbpre}enewsclass where bclassid='0' and showclass=0 order by
myorder,classid ASC limit 11",0,24,0}]
<?php
$classurl=sys_ReturnBqClassname($bqr,9); //取得栏目地址
$class="menu"; //有子栏目时一级栏目的样式
if($GLOBALS[navclassid])
{
$fcr=explode('|',$class_r[$GLOBALS[navclassid]][featherclass]);
$topbclassid=$fcr[1]?$fcr[1]:$GLOBALS[navclassid];//取得当前栏目的一级栏目ID
if($bqr[classid]==$topbclassid)
{
$class="on"; //当前栏目高亮显示
}
}
elseif($public_r[home]==1)
{
$class="menu";
}
?>
<li><a href="<?=$classurl?>" class="<?=$class?>"><?=$bqr[classname]?></a>
<?php
if(!$bqr[islast]) //判断是否终极栏目
{
?>
<ul class="sub-menu">
<?php
//取得栏目下的子栏目
$newsclass=$empire->query("select classid,classname from ".$dbtbpre."enewsclass where bclassid=".$bqr[classid]." order by myorder,classid asc limit 11");
while($classr=$empire->fetch($newsclass))
{
$classrurl=sys_ReturnBqClassname($classr,9); //取得子栏目地址
?>
<li class="b"><a href="<?=$classrurl?>"><?=$classr[classname]?></a></li>
<?php
}
?>
</ul>
<?php
}
?>
</li>
[/e:loop]
</ul>
<div class="icon-search" id="icon-search"></div>
<div class="search" id="search">
<form method="post" name="search" action="[!--news.url--]e/search/index.php" class="searchform">
<input type="text" name="q" placeholder="输入关键字..." class="text">
<input type="submit" class="btn" value="搜索"></form>
</div>
</div>
</div>