后台系统设置下面添加:

        <TR height=30 class="hoverbg"><TD class="menutd"><A class=menuChildhref='<{:U("Navs/nlist")}>'target=main>- 导航设置</A></TD></TR>

后台添加控制器NavsAction.class.php:

<?phpclass NavsAction extends CommonAction{public function nlist(){$m = M("Navs");import("ORG.Util.Paged");$count = $m->count();//总条数$page = new Page($count,20);$show = $page->show();// ,lang desc,orderby asc// $data = $m->field("id,pid,navname,navurl,path,addtime,isshow,lang,orderby,concat(path,'-',id) as bpath")->order('bpath asc,orderby asc')->limit($page->firstRow.','.$page->listRows)->select();$data = $m->field("id,pid,navname,navurl,path,addtime,isshow,lang,orderby,concat(path,'-',id) as bpath")->order('orderby asc')->limit($page->firstRow.','.$page->listRows)->select();foreach($data as $key=>$value){$data[$key]['count']=count(explode('-',$value['bpath']));}if($data){$this->assign("data",$data);$this->assign("page",$show);}//查询条件绑定// $dataclass = $m->where("isshow=1")->field("id,pid,navname,navurl,lang,path,orderby,concat(path,'-',id) as bpath")->order('bpath asc,orderby asc')->select();$dataclass = $m->where("isshow=1")->field("id,pid,navname,navurl,lang,path,orderby,concat(path,'-',id) as bpath")->order('orderby asc')->select();foreach($dataclass as $key=>$value){$dataclass[$key]['count']=count(explode('-',$value['bpath']));}$this->assign('dat',$dataclass);//语言版本取值$lang_data = SettingAction::getLang();$this->assign("lang_data",$lang_data);$this->display();}public function add(){if(IS_POST){$m = D("Navs");if($_POST['navname']==""){$this->error("栏目名称不能为空");}else if($_POST['byname']==""){$this->error("其他名称不能为空");}if($m->create()){$m->addtime=time();$pid=$_POST['pid'];if($pid==0){$m->ischild=0;}else{$data['ischild']=1;M("Navs")->where("id=$pid")->save($data);}$add_insert= $m->add();if($add_insert){if(isset($_POST['submit1'])){$this->success("添加成功",U("Navs/nlist"));}else{$nav_insert_id = M("Navs")->where("id=$add_insert")->getField("pid");$this->success("添加成功",U("Navs/add",array('mark'=>$nav_insert_id)));}}else{$this->error("添加失败");}}else{$this->error($m->getError());}}else{//绑定数据$m = M("Navs");$list = $m->field("id,pid,navname,byname,path,concat(path,'-',id) as bpath")->order('bpath')->select();//dump($list);foreach($list as $key=>$value){$list[$key]['count']=count(explode('-',$value['bpath']));}//排序$orderby1 = $m->order("orderby DESC")->limit(1)->find();if($orderby1){$orderbydata=$orderby1[orderby]+1;}else{$orderbydata=1;}$this->assign("alist",$list);$this->assign("orderbydata",$orderbydata);//语言版本取值$lang_data = SettingAction::getLang();$this->assign("lang_data",$lang_data);$this->display();}}//信息修改public function edit(){if(IS_POST){$id = trim(I("post.editid"));$navname = trim(I("post.navname"));$byname = trim(I("post.byname"));$navurl = trim(I("post.navurl"));$isshow = trim(I("post.isshow"));$lang = trim(I("post.lang"));$orderby = trim(I("post.orderby"));$updatetime = time();$pid = I("post.pid");$select_mark = I("post.select_mark");if(isset($id) && $id>0){if(empty($navname)){$this->error("栏目名称不能为空");}else if(empty($byname)){$this->error("其他名称不能为空");}$m = M("Navs");$data['navname']=$navname;$data['byname']=$byname;$data['navurl']=$navurl;$data['isshow'] = $isshow;$data['navcontent'] = $_POST['navcontent'];$data['lang'] = $lang;$data['orderby'] = $orderby;$data['pid']=$pid;//父类栏目if($pid==0){$data[path]=0;}else{$pid_all_data = M("Navs")->where(array('id'=>$pid))->find();$data[path]=$pid_all_data[path]."-".$pid_all_data[id];}if($select_mark==1){//递归查询该分类下所有子类ID$cate = M("Navs")->select();$child_id = Getcate::getChildsId($cate,$id);foreach($child_id as $vo){$id_all_data = M("Navs")->where(array('id'=>$id))->find();//原子类path$old_child_path = M("Navs")->where(array('id'=>$vo))->getField("path");//组合后的子类path$new_child_path = $data[path].str_replace($id_all_data[path], '', $old_child_path);M("Navs")->where(array('id'=>$vo))->save(array('path'=>$new_child_path));}}$data['updatetime'] = $updatetime;if($pid==0){$data['ischild']=0;}else{$data1['ischild']=1;M("Navs")->where("id=$pid")->save($data1);}$where['id']=$id;if($m->where($where)->limit(1)->save($data)){$this->success("修改成功",U("Navs/nlist",array('p'=>$_POST[p])));}else{$this->error("修改失败");}}}else{//数据绑定$m = M("Navs");$id = I("get.id");$list = $m->field("id,pid,navname,byname,path,concat(path,'-',id) as bpath")->order('bpath')->select();//dump($list);foreach($list as $key=>$value){$list[$key]['count']=count(explode('-',$value['bpath']));}$this->assign("alist",$list);if(isset($id) && $id>0){$where['id']=$id;$data = $m->where($where)->find();$this->assign("data",$data);//语言版本取值$lang_data = SettingAction::getLang();$this->assign("lang_data",$lang_data);}}$this->display();}//删除public function delete(){$id = I("get.id");$m = M("Navs");$cate = $m->select();//载入Getcate类import("@.Class.Getcate");$childid = Getcate::getChildsId($cate,$id);$childid[]=$id; //加上当前id//删除所有下级和当前分类if ($m->where(array('id'=>array('in',$childid)))->delete()) {$this->success("删除成功");}else{$this->error("删除失败");}}//导航栏目排序public function orderby(){if(IS_POST){$post=$_POST;if(empty($post) || $post==""){$this->error("没有数据,不能排序");}$orderarr = $post[orderby][order];$idarr = $post[orderby][id];for($i=0;$i<count($orderarr);$i++){$id = $idarr[$i];$data['orderby']=$orderarr[$i];M("Navs")->where("id=$id")->save($data);}$this->success("排序成功");}}//是否显示public function isshow(){$id = I("get.id");$isshow = I("get.isshow");$where['id']=$id;$data['isshow']=$isshow;$m = M("Navs");if($m->where($where)->save($data)){$this->success("操作成功",U("Navs/nlist"));}}//批量删除public function pldelete(){$str = I("get.str");$str = $str."0";//补0$m = M("Navs");$where['id']=array("in",$str);if($m->where($where)->delete()){echo "1";}else{echo "0";}}//批量显示public function plshow(){$str = I("get.str");$str = $str."0";//补0$m = M("Navs");$where['id']=array("in",$str);$data['isshow']=1;$data['updatetime']=time();if($m->where($where)->save($data)){echo "1";}else{echo "0";}}//批量隐藏public function plhidden(){$str = I("get.str");$str = $str."0";//补0$m = M("Navs");$where['id']=array("in",$str);$data['isshow']=0;$data['updatetime']=time();if($m->where($where)->save($data)){echo "1";}else{echo "0";}}}?>

后台模板Navs:
add.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>导航栏目添加</title><script language="javascript">var GV = {JS_ROOT: "__PUBLIC__/Js/",};
</script><load href="__PUBLIC__/Css/admin_style.css" />
<load href="__PUBLIC__/Js/artDialog/skins/default.css" /><load href="__PUBLIC__/Js/wind.js" />
<load href="__PUBLIC__/Js/jquery.js" /><script language="javascript">$(function(){$(".J_ajax_submit_btn").click(function(){var navname = $("#navname");var byname = $("#byname");if(navname.val()==""){Wind.use("artDialog", function () {art.dialog({id: "error",icon: "error",fixed: true,lock: true,background: "#CCCCCC",opacity: 0,content: "栏目名称不能为空",cancelVal: '确定',cancel: function(){navname.focus();}});});return false;}else if(byname.val()==""){Wind.use("artDialog", function () {art.dialog({id: "error",icon: "error",fixed: true,lock: true,background: "#CCCCCC",opacity: 0,content: "其他名称不能为空",cancelVal: '确定',cancel: function(){byname.focus();}});});return false;}else{return true;}})})
</script></head><body class="J_scroll_fixed">
<div class="wrap J_check_wrap"><div class="nav"><ul class="cc"><li><a href="javascript:void(0)">导航管理</a></li><li><a href="javascript:void(0)">栏目添加</a></li></ul></div><div class="h_a">添加导航栏目</div><form name="myform" action="<{:U("Navs/add")}>" method="post" class="J_ajaxForm" enctype="multipart/form-data"><div class="table_full"><table width="100%" class="table_form contentWrap"><tbody><tr><th width="100">栏目名称</th><td><input type="text" name="navname" value="" class="input" id="navname" size="30" placeholder="栏目名称"> <font color="#FF0000">*</font></td></tr><tr><th width="100">其他名称</th><td><input type="text" name="byname" value="" class="input" id="byname" size="30" placeholder="导航公共名称"> <font color="#FF0000">*</font></td></tr><tr><th width="100">所属父类</th><td><select name="pid"><option value="0">/</option><foreach name="alist" item="vo"><if condition="$Think.get.mark eq $vo[id]"><option selected value="<{$vo.id}>"><?phpfor($i=0;$i<$vo['count'];$i++){echo "   ";}?>  <{$vo.navname}></option><else /><option value="<{$vo.id}>"><?phpfor($i=0;$i<$vo['count'];$i++){echo "   ";}?><{$vo.navname}></option></if></foreach></select></td></tr><tr><th width="100">栏目链接</th><td><input type="text" name="navurl" value="" class="input" id="navurl" size="30" placeholder="栏目链接"> <font color="#FF0000">*</font></td></tr><tr><th>是否显示</th><td><select name="isshow"><option value="1">是</option><option value="0">否</option></select></td></tr><tr><th>语言</th><td><select name="lang"><foreach name="lang_data" item="vo"><option value="<{$vo.lang_val}>"><{$vo.lang_name}></option></foreach></select></td></tr><tr><th>排序</th><td><input type="text" name="orderby" id="orderby" class="input" size="30"  placeholder="输入排序:" value="<{$orderbydata}>" /></td></tr><tr><th>备注</th><td><textarea name="navcontent"  class="inputtext" style="width:450px;height:100px;" placeholder="该栏目的其他信息:"></textarea></td></tr></tbody></table></div><div class="btn_wrap" style="z-index:999;"><div class="btn_wrap_pd">             <button class="btn btn_submit mr10 J_ajax_submit_btn" type="submit" name="submit1" value="ok">确定</button><button class="btn btn_submit mr10 J_ajax_submit_btn" type="submit" name="submit2" value="ok">保存并继续添加</button></div></div></form>
</div>
</body></html>

edit.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>修改导航栏目</title><script language="javascript">var GV = {DIMAUB: "/NewsWeb2/",JS_ROOT: "__PUBLIC__/Js/",TOKEN: "{$__token__}"
};
</script><load href="__PUBLIC__/Css/admin_style.css" />
<load href="__PUBLIC__/Js/artDialog/skins/default.css" /><load href="__PUBLIC__/Js/wind.js" />
<load href="__PUBLIC__/Js/jquery.js" />
<load href="__PUBLIC__/Css/cloud-zoom.css" />
<load href="__PUBLIC__/Js/cloud-zoom.1.0.2.min.js" /><script type="text/javascript" charset="utf-8" src="__PUBLIC__/Js/ueditor/ueditor.config.js"></script>
<script type="text/javascript" charset="utf-8" src="__PUBLIC__/Js/ueditor/ueditor.all.min.js"> </script><!--建议手动加在语言,避免在ie下有时因为加载语言失败导致编辑器加载失败--><!--这里加载的语言文件会覆盖你在配置项目里添加的语言类型,比如你在配置项目里配置的是英文,这里加载的中文,那最后就是中文-->
<script type="text/javascript" charset="utf-8" src="__PUBLIC__/Js/ueditor/lang/zh-cn/zh-cn.js"></script><style type="text/css">/* zoom-section */.zoom-section{clear:both;margin-top:20px;}*html .zoom-section{display:inline;clear:both;}.zoom-small-image{border:4px solid #CCC;float:left;margin-bottom:0px;}
</style>
<script language="javascript">$(function(){$(".J_ajax_submit_btn").click(function(){var navname = $("#navname");var byname = $("#byname");if(navname.val()==""){Wind.use("artDialog", function () {art.dialog({id: "error",icon: "error",fixed: true,lock: true,background: "#CCCCCC",opacity: 0,content: "栏目名称不能为空",cancelVal: '确定',cancel: function(){navname.focus();}});});return false;}else if(byname.val()==""){Wind.use("artDialog", function () {art.dialog({id: "error",icon: "error",fixed: true,lock: true,background: "#CCCCCC",opacity: 0,content: "其他名称不能为空",cancelVal: '确定',cancel: function(){byname.focus();}});});return false;}else if($("#select_err").val()==1){Wind.use("artDialog", function () {art.dialog({id: "error",icon: "error",fixed: true,lock: true,background: "#CCCCCC",opacity: 0,content: "所属分类不正确",cancelVal: '确定',cancel: function(){$("select[name=pid]").focus();}});});return false;}else{return true;}})})
</script><script type="text/javascript">$(function(){var pid = "<{$data.pid}>";var type_id = "<{$data.id}>";$("select[name='pid']").change(function(){//判断是否选择为自己if(this.value==type_id){alert("操作错误,自己不能作为自己父类");$("#select_err").val("1");return false;}else{$("#select_err").val("0");}})})
</script>
</head><body class="J_scroll_fixed">
<div class="wrap J_check_wrap"><div class="nav"><ul class="cc"><li><a href="javascript:void(0)">导航管理</a></li><li><a href="javascript:void(0)">栏目修改</a></li></ul></div><div class="h_a">修改栏目</div><form name="myform" action="<{:U("Navs/edit")}>" method="post" class="J_ajaxForm" enctype="multipart/form-data"><div class="table_full"><table width="100%" class="table_form contentWrap"><tbody><tr><th width="100">栏目名称</th><td><input type="text" name="navname" value="<{$data.navname}>" class="input" id="navname" size="30" placeholder="导航名称"> <font color="#FF0000">*</font></td></tr><tr><th width="100">其他名称</th><td><input type="text" name="byname" value="<{$data.byname}>" class="input" id="byname" size="30" placeholder="导航公共名称"> <font color="#FF0000">*</font></td></tr><tr><th width="100">所属父类</th><td><select name="pid"><option value="0">/</option><foreach name="alist" item="vo"><if condition="$data[pid] eq $vo[id]"><option value="<{$vo.id}>" selected><?phpfor($i=0;$i<$vo['count'];$i++){echo "   ";}?><{$vo.navname}></option><else /><option value="<{$vo.id}>"><?phpfor($i=0;$i<$vo['count'];$i++){echo "   ";}?><{$vo.navname}></option></if></foreach></select><span><input type="checkbox" value="1" name="select_mark">移动 <font color="red"><<<{$data.navname}>>></font> 下所有子栏目</span></td></tr><tr><th width="100">栏目链接</th><td><input type="text" name="navurl" value="<{$data.navurl}>" class="input" id="navurl" size="30" placeholder="栏目链接"> <font color="#FF0000">*</font></td></tr><tr><th>是否显示</th><td><select name="isshow"><if condition="$data.isshow eq 1"><option value="1">是</option><option value="0">否</option><else /><option value="0">否</option><option value="1">是</option></if></select></td></tr><tr><th>语言</th><td><select name="lang"><foreach name="lang_data" item="vo"><if condition="$data.lang eq $vo[lang_val]"><option selected value="<{$vo.lang_val}>"><{$vo.lang_name}></option><else /><option value="<{$vo.lang_val}>"><{$vo.lang_name}></option></if></foreach></select></td></tr><tr><th>排序</th><td><input type="text" name="orderby" id="orderby" placeholder="输入排序:" class="input" size="30" value="<{$data.orderby}>" /></td></tr><tr><th>备注</th><td><textarea name="navcontent"  class="inputtext" style="width:450px;height:100px;" placeholder="该栏目的其他信息:"><{$data.navcontent}></textarea></td></tr></tbody></table></div><div class="btn_wrap" style="z-index:999;"><div class="btn_wrap_pd">             <button class="btn btn_submit mr10 J_ajax_submit_btn" type="submit">确定</button><input type="hidden" name="editid" value="<{$data.id}>" /><input type="hidden" id="select_err" value="0" /><input type="hidden" name="p" value="<{$Think.get.p}>" /></div></div></form>
</div></body></html>

nlist.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>导航列表</title>
<script language="javascript">var GV = {JS_ROOT: "__PUBLIC__/Js/",};
</script><load href="__PUBLIC__/Css/admin_style.css"/>
<load href="__PUBLIC__/Css/admin_style.css" />
<load href="__PUBLIC__/Js/artDialog/skins/default.css" /><load href="__PUBLIC__/Js/wind.js" />
<load href="__PUBLIC__/Js/jquery.js" />
<load href="__PUBLIC__/Js/ajaxpage.js" /><script language="javascript">function ab(){if(confirm("确定要删除吗?该操作将删除栏目下的所有子栏目!")){return true;}else{return false;}}
</script></head><body class="J_scroll_fixed">
<div class="wrap J_check_wrap"><div class="nav"><ul class="cc"><li><a href="javascript:void(0)">系统设置</a></li><li><a href="<{:U('Navs/nlist')}>">导航设置</a></li></ul></div><div class="mb10"><a href='<{:U("Navs/add")}>' class="btn" title="添加栏目"><span class="add"></span>添加栏目</a></div><div class="table_list"><table width="100%" cellspacing="0" ><thead><tr><td width="121" align="center">ID</td><td width="230" align="left">栏目名称</td><td width="242" align="center">路径</td><td width="156" align="center">导航链接</td><td width="156" align="center">是否显示</td><td width="90" align="center" >语言</td><td width="303"  align="center">添加时间</td><td width="392" align="center">管理操作</td></tr></thead><tbody><volist name="data" id="vo"><tr><td align='center'><{$vo.id}></td><td align='left'><?phpfor($i=0;$i<$vo['count'];$i++){echo "   ";}?><{$vo.navname}></td><td align='center'><{$vo.path}></td><td align='center'><{$vo.navurl}></td><td align='center'><if condition="$vo.isshow eq 1"><font color="green">是</font><else /><font color="red">否</font></if></td><td align="center"><foreach name="lang_data" item="v"><if condition="$vo.lang eq $v[lang_val]"><{$v.lang_name}></if></foreach></td><td align='center'><{$vo.addtime|date="Y-m-d H:i:s",###}></td><td align='center'><a href="<{:U('Navs/edit',array('id'=>$vo['id'],'p'=>$_GET[p]))}>">修改</a> |<if condition="$vo.isshow eq 1"><font color="green"><a href='<{:U("Navs/isshow",array("id"=>$vo[id],"isshow"=>0))}>'>隐藏</a></font> |<else /><a style="color:red;" href='<{:U("Navs/isshow",array("id"=>$vo[id],"isshow"=>1))}>'>显示</a> |</if><a οnclick="return ab()" class="" href="<{:U('Navs/delete',array('id'=>$vo['id']) ) }>">删除</a> </td></tr></volist></tbody></table><div class="p10"><div class="btn_wrap" style="z-index:999;"><div class="btn_wrap_pd"><div class="pages"> <span class="ajaxpage"><{$page}></span> </div></div></div></div></div>
</div>
<script src="__PUBLIC__/Js/common.js?v"></script>
<script type="text/javascript"></script>
</body>
</html>

前台公共控制器 CommonAction.class.php:
 1、 有二级栏目(二级栏目加在新闻栏目中)如下:

          //导航$url="Index/index";$navsdata = M("Navs")->where(array('pid'=>0,'isshow'=>1,'lang'=>$this->lang))->select();foreach($navsdata as $k=>$vo){$navsdata[$k][navurl]=str_replace("Index/index",$vo[navurl],$url);$child=$this->getNewsList2($vo[navname],$this->lang,20,1,0,0);$navsdata[$k][child]=array_chunk($child,5,true);}$this->assign("navsdata",$navsdata);

前台调用:

      <!--导航--><div class="nav-box"><div class="w12"><ul class="nav" οnclick="getUrl(arguments[0])"><volist name="navsdata" id="vo"><li <if condition="($vo[navname] eq '学院概况') and ($modue_name eq 'About')">class="active"<elseif condition="($vo[navname] eq '新闻中心') and ($modue_name eq 'News')"/>class="active"<elseif condition="($vo[navname] eq '院系设置') and ($modue_name eq 'Depart') "/>class="active"<elseif condition="($vo[navname] eq '合作交流') and ($modue_name eq 'Cooper') "/>class="active"<elseif condition="($vo[navname] eq '招生在线') and ($modue_name eq 'Enroll') "/>class="active"<elseif condition="($vo[navname] eq '教育科研') and ($modue_name eq 'Research') "/>class="active"<elseif condition="($vo[navname] eq '党团园地') and ($modue_name eq 'Party') "/>class="active"<elseif condition="($vo[navname] eq '校园生活') and ($modue_name eq 'Campus') "/>class="active"</if>><a href="<{:U($vo['navurl'])}>" title="<{$vo.navname}>"><{$vo.navname}></a><dl class="sub-nav"><volist name="vo[child]" id="v"><dd><volist name="v" id="vv" key="k"><if condition="$vo.navname eq '学院概况' "><a href="<{:U('About/about',array('tid'=>$vv[id]))}>" title="<{$vv.conclassname}>"><{$vv.conclassname|mb_strimwidth=0,18,'...','utf-8'}></a><elseif condition="$vo.navname eq '新闻中心' "/><if condition="$vv.conclassname eq '动态新闻' "><a href="<{:U('News/dynamic')}>" title="<{$vv.conclassname}>"><{$vv.conclassname|mb_strimwidth=0,18,'...','utf-8'}></a><else /><a href="<{:U('News/newslist',array('tid'=>$vv[id]))}>" title="<{$vv.conclassname}>"><{$vv.conclassname|mb_strimwidth=0,18,'...','utf-8'}></a></if><elseif condition="$vo.navname eq '院系设置' "/><a href="<{:U('Depart/clalist',array('tid'=>$vv[id]))}>" title="<{$vv.conclassname}>"><{$vv.conclassname|mb_strimwidth=0,18,'...','utf-8'}></a><elseif condition="$vo.navname eq '合作交流' "/><a href="<{:U('Cooper/index',array('tid'=>$vv[id]))}>" title="<{$vv.conclassname}>"><{$vv.conclassname|mb_strimwidth=0,18,'...','utf-8'}></a><elseif condition="$vo.navname eq '招生在线' "/><a href="<{:U('Enroll/index',array('tid'=>$vv[id]))}>" title="<{$vv.conclassname}>"><{$vv.conclassname|mb_strimwidth=0,18,'...','utf-8'}></a><elseif condition="$vo.navname eq '教育科研' "/><a href="<{:U('Research/reslist',array('tid'=>$vv[id]))}>" title="<{$vv.conclassname}>"><{$vv.conclassname|mb_strimwidth=0,18,'...','utf-8'}></a><elseif condition="$vo.navname eq '党团园地' "/><a href="<{:U('Party/partylist',array('tid'=>$vv[id]))}>" title="<{$vv.conclassname}>"><{$vv.conclassname|mb_strimwidth=0,18,'...','utf-8'}></a><elseif condition="$vo.navname eq '校园生活' "/><a href="<{:U('Campus/camlist',array('tid'=>$vv[id]))}>" title="<{$vv.conclassname}>"><{$vv.conclassname|mb_strimwidth=0,18,'...','utf-8'}></a></if></volist></dd></volist></dl></li></volist><div class="clear"></div></ul></div></div>

2、 没有二级栏目

            //导航$url="Index/index";$navsdata = M("Navs")->where(array('pid'=>0,'isshow'=>1,'lang'=>$this->lang))->select();foreach($navsdata as $k=>$vo){$navsdata[$k][navurl]=str_replace("Index/index",$vo[navurl],$url);}$this->assign("navsdata",$navsdata);

前台调用:

                <volist name="navsdata" id="vo"><li class="dropdown"><a href="<{:U($vo['navurl'])}>" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true"aria-expanded="false"><{$vo.navname}><b class="caret"></b></a><if condition="$vo.navname eq '招商加盟' "><ul class="dropdown-menu"><li><a href="<{:U('Join/index')}>">招商页面</a></li><li><a href="<{:U('Join/terminal')}>">终端Si展示</a></li></ul></if></li></volist>

数据表tp_navs:

注:在sql编辑器中输入下面代码然后运行即可

CREATE TABLE `tp_navs` (`id` int(4) NOT NULL AUTO_INCREMENT,`pid` int(4) DEFAULT '0' COMMENT '父类id',`navname` varchar(50) DEFAULT '' COMMENT '导航名',`byname` varchar(50) DEFAULT NULL COMMENT '别名',`path` varchar(100) DEFAULT '0',`ischild` tinyint(1) DEFAULT '0',`navcontent` text COMMENT '备注',`navurl` varchar(100) DEFAULT '' COMMENT '导航链接',`isshow` tinyint(1) DEFAULT '0' COMMENT '是否显示',`lang` tinyint(3) DEFAULT '0' COMMENT '语言',`orderby` int(8) DEFAULT '0' COMMENT '排序',`catetype` tinyint(1) DEFAULT '0',`addtime` varchar(30) DEFAULT '' COMMENT '添加时间',`updatetime` varchar(30) DEFAULT '' COMMENT '修改时间',PRIMARY KEY (`id`)
)

数据库连接点击下载

后台添加导航菜单(可显示或隐藏)相关推荐

  1. 在 jQuery 中使用滑入滑出动画效果,实现二级下拉导航菜单的显示与隐藏效果

    查看本章节 查看作业目录 需求说明: 在 jQuery 中使用滑入滑出动画效果,实现二级下拉导航菜单的显示与隐藏效果 用户将光标移动到"最新动态页"或"帮助查询" ...

  2. html二级菜单显示与隐藏,Vue实现二级菜单的显示与隐藏

    Vue实现二级菜单的显示与隐藏 *{ padding: 0; margin: 0; font-size: 14px; } ul{ width: 200px; height: auto; } h2{ b ...

  3. WordPress后台添加侧边栏菜单

    https://my.oschina.net/shunshun/blog/78193 https://www.ludou.org/add-admin-menu-in-wordpress.html 添加 ...

  4. php在菜单栏里加子菜单,WordPress后台添加子菜单add_submenu_page()

    接上文:WordPress后台添加顶级菜单add_menu_page(),今儿再分享一下在 wordpress 后台侧边栏添加子菜单的方法,用到的函数是:add_submenu_page() 函数用法 ...

  5. 关于DEDECMS自定义模型当中添加自定义字段后在后台添加内容后不显示解决方案...

    问题:我们自定义模型,添加自定义字段,比如单行文本(varchar)字段时,在后台添加内容,无法显示,但数据库里字段是有数据的. 解决办法:看看你的字段命名是否有大写,如果有全部改成小写就好了. 转载 ...

  6. 大前端Dux主题如何添加导航菜单字体图标

    对于刚刚接触大前端Dux主题的小伙伴来说,想要在短时间内折腾出一个漂亮大气的网站博客,也并不是那么容易,因为大前端Dux主题的功能真的很多很多,你自己都不知道从那里下手.今天跟小伙伴们说说大前端Dux ...

  7. vue 电梯导航制作(鼠标滚动控制导航栏的显示与隐藏)

    鼠标滚动控制导航栏的显示与隐藏 上图先看效果: 下面为2张图,默认为导航栏,当鼠标向下滚动一定距离时,变为箭头, 并且点击黄色的返回图标,也变为下方箭头,此时再滚动窗口,不会变为导航栏. 点击下方箭头 ...

  8. php添加导航和删除导航,新增/修改/删除ECSHOP后台左侧导航菜单

    ECSHOP后台有许多管理菜单,是否有心想将一些不用的菜单删除呢,是否想增加或者修改菜单名称呢. 通过以下方法可以实现: 例如:我们要在后台新增一个菜单分类项"APP管理",再增加 ...

  9. wordpress主题开发:怎样添加导航菜单?

    2019独角兽企业重金招聘Python工程师标准>>> 这是一篇针对wordpress新手的文章,如果你是一位老手,可以离开看看别的内容.一些新手朋友在刚接触到wordpress时, ...

最新文章

  1. 计算机语言编程能力有哪些,除了编程语言,程序员还需要具备哪些能力
  2. java正则表达式及api_JAVA常用API:正则表达式regular expression
  3. oracle+view性能,Oracle 10g的隐含参数_complex_view_merging引发的性能问题
  4. C语言中malloc为字符型指针分配内存引起的缓冲区泄露
  5. 设计模式--访问器(Visitor)模式
  6. Linux中的SELinux与chcon以及Samba实现【转】
  7. python字符串的美化_Python构造自定义方法来美化字典结构输出
  8. oracle定时任务会漂移,定时任务与手动执行脚本时的一个重要注意事项
  9. 来吧学学.Net Core之项目文件简介及配置文件与IOC的使用
  10. 【渝粤教育】广东开放大学 社会调查与方法 形成性考核 (35)
  11. 2020年短视频用户价值研究报告
  12. Android 应用开发(42)---ImageView
  13. linux 火狐浏览器插件,Linux系统Firefox(火狐浏览器)插件挂机
  14. 四分位数(Quartiles)、十分位数(Deciles)和百分位数(Percentiles
  15. html的经典语法大全,HTML语法大全
  16. echarts 实现世界地图地域流向炫酷效果
  17. 配置Skype for business 2015混合部署
  18. 解析为何支付宝微信二维码合一
  19. 秋招总结|阿里转正失败,到拿到10个大厂产品offer
  20. 在ARM-Linux下实现车牌识别(二)------车牌识别

热门文章

  1. 雅虎美女CEO梅耶尔
  2. 啪一下子回到了10年前的B站,我泪目了
  3. python自动点赞功能
  4. Sqlite导入xxx.db3文件
  5. vue 动态路由的实现(后台数据,前台拿到数据生成侧边栏)
  6. #{}不自动改参数类型_证件照上传不成功,教你修改分辨率、调整照片大小
  7. 《乖,摸摸头》经典语录
  8. 数字化转型时代 百年品牌OKI是如何跟进的?
  9. 毕设 德育分统计系统
  10. 【追光者系列】HikariCP默认配置