学做网站培训课程介绍

当前位置:

帝国CMS如何调用带下拉菜单的导航

帝国CMS建网站时,使用程序自带的菜单标签,可以生成纯A的菜单。

[!--class.menu--]

如果只想调用一级导航,可以使用以下的代码:

<ul class="topnav">
<li class="<?= ($GLOBALS['navclassid'] ? '' : 'current-menu-item') ?>"><a href="[!--news.url--]">网站首页</a></li>
<?php
// 查询一级菜单
$sql = $empire->query("select classid, sonclass, classname, islast, islist from {$dbtbpre}enewsclass where bclassid=0 and showclass=0 order by myorder asc LIMIT 20");
while ($primaryMenu = $empire->fetch($sql)) {
$classUrl = sys_ReturnBqClassname($primaryMenu, 9);
$topClass = '';
$featherClass = explode('|', $class_r[$GLOBALS['navclassid']]['featherclass']);
$topbclassid = $featherClass[1] ? $featherClass[1] : $GLOBALS['navclassid'];

// 判断是否为当前菜单
if ($topbclassid == $primaryMenu['classid']) {
$topClass = 'current-menu-item';
}

?>
<li class="navbar-item <?=$topClass?>"><a href="<?=$classUrl?>"><?=$primaryMenu['classname']?></a></li>
<?php }?>
</ul>

如果想制作带二级菜单,需要显示带下拉功能的导航菜单,使用默认菜单标签是无法实现的。可以使用以下的代码来实现。( LIMIT 20 可以控制数量)

<ul class="topnav">
<li class="<?= ($GLOBALS['navclassid'] ? '' : 'current-menu-item') ?>"><a href="[!--news.url--]">网站首页</a></li>
<?php
// 查询一级菜单
$sql = $empire->query("select classid, sonclass, classname, islast, islist from {$dbtbpre}enewsclass where bclassid=0 and showclass=0 order by myorder asc LIMIT 20");
while ($primaryMenu = $empire->fetch($sql)) {
$classUrl = sys_ReturnBqClassname($primaryMenu, 9);
$topClass = '';
$featherClass = explode('|', $class_r[$GLOBALS['navclassid']]['featherclass']);
$topbclassid = $featherClass[1] ? $featherClass[1] : $GLOBALS['navclassid'];

// 判断是否为当前菜单
if ($topbclassid == $primaryMenu['classid']) {
$topClass = 'current-menu-item';//当前样式
}

//判断是否有二级菜单
if ($primaryMenu['islast'] == 0) {//有下拉
$fuliclass=" ";
$fuaclass=" ";
}else{
$fuliclass=" ";
$fuaclass=" ";
}

?>
<li class="<?=$topClass?> <?=$fuliclass?>"><a class="<?=$fuaclass?>" href="<?=$classUrl?>"><?=$primaryMenu['classname']?></a>

<?php
//判断是否有二级菜单
if ($primaryMenu['islast'] == 0) { ?>
<ul class="sub-menu">
<?
$sql2 = $empire->query("select classid, classname from {$dbtbpre}enewsclass where bclassid={$primaryMenu['classid']} and showclass=0 order by myorder asc");
$subMenuStr = "";
while ($secondaryMenu = $empire->fetch($sql2)) {
$classUrl2 = sys_ReturnBqClassname($secondaryMenu, 9);
?>
<li><a href="<?=$classUrl2?>"><?=$secondaryMenu['classname']?></a></li>
<?
}
?>
</ul>
<?php }
?>

</li>
<?php }?>
</ul>

可以根据自己原代码的类名进行修改,它是自动判断当前一级分类下是否有二级分类,如果有就以下拉的方式来实现展示。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

相关教程

  • 在制作网站过程中,使用的网站程序有时是需要对应的网站PHP版本才可以正常使用的。如果我们是使用的宝塔面板,应该怎么更换网站的PHP版本呢?下面学
  • 我们可以使用PHP代码来获取网站访问用户的IP地址,但怎么将IP地址自动转成归属地呢?下面学做网站论坛介绍一下实现方法。PHP获取IP地址:<?php
  • 我们在开发网站时,有时需要记录所有用户登录网站的信息,如登录时间、登录IP地址等。只要用户一登录,就自动将用户的登录信息写入数据库里。下面就w
  • 通常我们制作网站的二级菜单都是使用普通的下拉展开的方式,但也有网站的下拉二级菜单是带有图片的布局。如下图:怎么制作这样的带图的二级下拉菜单
  • 默认情况下,服务器的PHP上传限制为50M,对于多数上传是足够了。如果想在网站后台上传更大的文件,可以在宝塔后台修改上传限制50M的大小。方法如下:
  • 做网站时,有时需要在网站前台制作一个表单,表单里有点击上传图片的功能。怎么自己使用PHP制作这种网站前台表单上传图片到服务器功能呢?下面分享
  • 这个教程将讲解Wordpress + Elementor可视化开发外贸独立网站的整个过程,将以视频案例的方式一步步讲解如何可视化开发外贸独立网站。以下是可视化开
  • 制作外贸网站时,如果想在网站的网页中嵌入地图,我们需要嵌入英文版地图。如下图:怎么做到嵌入这样的英文版地图呢,下面学做网站论坛就来介绍一下
  • 网站导航菜单中常见的有二级下拉菜单,这个制作起来相对比较简单。如果网站项目比较多时,可以制作三级下拉菜单,可以更好的展示项目。如下图:怎么
  • 现在很多网站都安装了SSL证书来实现加密访问,SSL证书一般是申请后可以使用一年,一年到期后再次申请重新布署。但有些站长会遇到这样的情况,网站旧
在线
客服
手机二维码 手机二维码
返回顶部 返回顶部