帝国论坛帝国网站管理系统交流区帝国CMS使用交流[分享]详细版无限级栏目导航实现,三级、四级、栏目导航。 【本版专题贴子】  
 1/5     1 2 3 4 5 ›› ›|
主题:[分享]详细版无限级栏目导航实现,三级、四级、栏目导航。 [加入收藏夹]   

城城
用户头衔:书生

精华贴   :0
发贴数   :13
经验值   :99
注册时间:2011-03-07
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 1 楼]
[分享]详细版无限级栏目导航实现,三级、四级、栏目导航。
先要感谢:nappan 提供的思路
http://bbs.phome.net/showthread-13-210942-0.html


第一步:
修改e/class/userfun.php文件,这个文件是专门应用用户自定义函数用的,不用担心。

一般您的此文件会是这样的。如果有改动,说明您是高手跟不就不需要解释了吧。
<?php

//---------------------------用户自定义标签函数文件

?>

修改为
<?php

//---------------------------用户自定义标签函数文件

//循环次级栏目函数

function user_ListCats($bclassid) {

global $empire, $dbtbpre;

//        classpath 为地址

$sql=$empire->query("select classid, classname, bclassid, islast, classpath, classurl from {$dbtbpre}enewsclass where bclassid='$bclassid' and wburl='' order by myorder,classid");

//        判断是否有类别记录

        $num=$empire->num1($sql);

        if ($num == 0 && $bclassid == 0)//无记录

        {

            echo $GLOBALS['notrecordword'];

            return "";

        }

        if ($num == 0)

        {

            return '';

        }

        $i = 1;

        while ($r=$empire->fetch($sql))

        {

            //        如果不是终极栏目,显示其子目录

            if(empty($r[islast]))

            {

                echo '<li><a href="' . $r[classpath] . '">' . $r[classname] . '</a>'."\r\n";

                                echo '<ul>'."\r\n";

                user_ListCats($r[classid], $showMore);

                                echo '</ul>'."\r\n";

                                echo '</li>'."\r\n";

            } else {

                echo '<li><a href="' . $r[classpath] . '">' . $r[classname] . '</a></li>'."\r\n";

            }

            $i += 1;

        }

    }

?>



修改完成保存后,上传替换原来的e/class/userfun.php文件。


第二步:进入后台管理
点击。模板-->标签-->管理标签
点击  增加标签  按钮
标签名:写您自己看得懂的
标签符号:myli  (当然你也可以自己写喜欢的,一会在调用标签时对应这个就行了)

所属类别:不用改。爱改你就改。
函数名:user_ListCats
一定要写对哦大小写,不可改动,一定要写对。
是否开启标签  选是
然后点提交。

第三步:在你需要调用的地方。加入代码

<div>
<ul>
[myli]0,1[/myli]
</ul>
</div>

好了试试看是不是全都出来了?
关于[myli]0,1[/myli]的两个参数 ,第一个是栏目ID,0为所有栏目,第二个是,是否显示多级子栏目,1为显示。0为只显示一级。

顺便提供给大家一个弹出的无限菜单实例做参考

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<style>
.suckerdiv ul{
margin: 0;
padding: 0;
list-style-type: none;
width: 150px; /* Width of Menu Items */
border-bottom: 1px solid #ccc;
}
       
.suckerdiv ul li{
position: relative;
}
       
/*1st level sub menu style */
.suckerdiv ul li ul{
left: 149px; /* Parent menu width - 1*/
position: absolute;
width: 160px; /*sub menu width*/
top: 0;
display: none;
}

/*All subsequent sub menu levels offset */
.suckerdiv ul li ul li ul{
left: 159px; /* Parent menu width - 1*/
}

/* menu links style */
.suckerdiv ul li a{
display: block;
color: black;
text-decoration: none;
font:12px 宋体;
background: #fff;
padding: 5px 5px;
border: 1px solid #ccc;
border-bottom: 0;
}

.suckerdiv ul li a:visited{
color: black;
}

.suckerdiv ul li a:hover{
color: white;
background-color: gray;
}

.suckerdiv .subfolderstyle{
background: url(images/arrow-list.gif) no-repeat center right;
}
       
/* Holly Hack for IE \*/
* html .suckerdiv ul li { float: left; height: 1%; }
* html .suckerdiv ul li a { height: 1%; }
/* End */
</style>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta name="keywords" content="" />
<meta name="description" content="SUNS" />
<title>suns</title>
<script type="text/javascript">
//SuckerTree Vertical Menu (Aug 4th, 06)
//By Dynamic Drive: http://www.dynamicdrive.com/style/

var menuids=["suckertree1"] //Enter id(s) of SuckerTree UL menus, separated by commas

function buildsubmenus(){
for (var i=0; i<menuids.length; i++){
  var ultags=document.getElementById(menuids[i]).getElementsByTagName("ul")
    for (var t=0; t<ultags.length; t++){
    ultags[t].parentNode.getElementsByTagName("a")[0].className="subfolderstyle"
    ultags[t].parentNode.onmouseover=function(){
    this.getElementsByTagName("ul")[0].style.display="block"
    }
    ultags[t].parentNode.onmouseout=function(){
    this.getElementsByTagName("ul")[0].style.display="none"
    }
    }
  }
}

if (window.addEventListener)
window.addEventListener("load", buildsubmenus, false)
else if (window.attachEvent)
window.attachEvent("onload", buildsubmenus)
</script>
</head>
<body>

<div class="suckerdiv">
<ul id="suckertree1">
[myli]0,1[/myli]
</ul>
</div>

</body>
</html>


[该贴被修改 1 次,最后修改时间 2013-03-23 10:00:57 ]



2013-03-23 09:56:26 已设置保密 顶部 回复 引用 报告 编辑 删除

城城
用户头衔:书生

精华贴   :0
发贴数   :13
经验值   :99
注册时间:2011-03-07
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 2 楼]

  发贴以后省得找啊。。方便大家方便自己。。




2013-03-23 09:58:57 已设置保密 顶部 回复 引用 报告 编辑 删除

imutou2010
用户头衔:秀才

精华贴   :0
发贴数   :75
经验值   :416
注册时间:2010-09-05
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 3 楼]

技术贴,顶起




2013-03-23 10:40:59 已设置保密 顶部 回复 引用 报告 编辑 删除

加菲123
用户头衔:举人

精华贴   :0
发贴数   :319
经验值   :803
注册时间:2013-02-28
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 4 楼]

说明您是高手跟不就不需要解释了吧




2013-03-23 15:59:08 已设置保密 顶部 回复 引用 报告 编辑 删除

tkf88
用户头衔:探花

精华贴   :0
发贴数   :8662
经验值   :22022
注册时间:2007-05-26
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 5 楼]

支持一下




2013-03-23 20:23:16 已设置保密 顶部 回复 引用 报告 编辑 删除

bebebe
用户头衔:探花

精华贴   :0
发贴数   :2692
经验值   :6789
注册时间:2010-03-01
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 6 楼]

学习




2013-03-25 08:48:07 已设置保密 顶部 回复 引用 报告 编辑 删除

html高手
用户头衔:探花

精华贴   :0
发贴数   :9114
经验值   :23336
注册时间:2008-02-23
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 7 楼]

支持一下




2013-03-25 09:26:33 已设置保密 顶部 回复 引用 报告 编辑 删除

sxpyccl
用户头衔:书生

精华贴   :0
发贴数   :10
经验值   :81
注册时间:2012-06-12
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 8 楼]

原帖由 城城 于 2013-03-23 09:56:26 发表
先要感谢:nappan 提供的思路
http://bbs.phome.net/showthread-13-210942-0.html


第一步:
修改e/class/user...

楼主,能不能给我改一下这个呢。我想要这个效果。。。

网址:http://js.alixixi.com/a/2009092458293.shtml

附件我给你上传了。

我整了半天也整不好。谢谢楼主了啊。


上传以下附件:
[下载 *.rar](文件大小:57.39 KB,下载次数:4)




2013-06-03 13:38:59 已设置保密 顶部 回复 引用 报告 编辑 删除

pw8
用户头衔:探花

精华贴   :0
发贴数   :8756
经验值   :22494
注册时间:2008-10-10
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 9 楼]

技术贴,支持




2013-06-04 08:37:18 已设置保密 顶部 回复 引用 报告 编辑 删除

chunle
用户头衔:进士

精华贴   :0
发贴数   :1365
经验值   :4336
注册时间:2007-01-09
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 10 楼]

这个很有难度呀。



顺安途科技
2013-06-22 15:47:09 已设置保密 顶部 回复 引用 报告 编辑 删除
 1/5     1 2 3 4 5 ›› ›|

快速回复
内容

表情
使用EBB代码 使用smile代码 显示签名 自动分析url 自动分析img
     【进入高级模式】   (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1