项目需要做三级项目实现,网上查了下资料并不算多,而且有的都是顶级为指定ID的那种,指定ID实际算是2级并不是3级,所以在此把代码贴上,以备他人所需。

1、环境:织梦

<div id="navMenu"><ul><li ><a href="/">网站首页</a></li>{dede:channelartlist typeid='top' row='10' currentstyle="home"} //currentstyle 可以实现栏目切换时改变class状态,但需要修一些文件,具体看下面一段代码<li class='{dede:field.currentstyle/}'><a href="{dede:field name='typeurl'/}"  rel='dropmenu'>{dede:field name='typename' /}</a><div id="erji" class="erji hide" style="position: absolute;width: 200px">{dede:sql sql='select * from ywcm_arctype where reid =~id~ '}<dl style="position: relative;height: 30px"><a href='[field:typelink/]' target='_self'title="[field:typename/]" style="width: 90%;padding-left:10%;text-align:left;line-height: 30px">[field:typename/]</a><div id="sanji" class="hide" style="position: absolute;width: 200px;left: 200px;background: #0D6598;">[field:id runphp='yes']global $dsql;$id=@me;$sql='Select * from ywcm_arctype where reid='.$id.' ORDER BY id limit 0,20';$dsql->SetQuery($sql);$dsql->Execute();while($row = $dsql->GetArray()){$url = str_replace("{cmspath}","",$row['typedir']);$str .='<a href="'.$url.'" style="display: block;width: 90%;padding-left: 10%;text-align: left;line-height: 30px;">'.$row['typename'].'</a>';@me = $str;}                      if(@me == $id){ //避免3级栏目为空时 写出分类ID,这里加以判断 @me ='';}[/field:id]</div></dl>{/dede:sql}</div></li>{/dede:channelartlist}</ul>

2、实现导航切换变色 所需要修改的文件

找到 织梦 更目录下 include/taglib/channelartlist.lib.php 文件

约94行 找到 $pv->Fields['typeurl'] = GetOneTypeUrlA($typeids[$i]); 代码,在此代码下插入

if($typeids[$i]['id'] == $refObj->TypeLink->TypeInfos['id'] || $typeids[$i]['id'] == $refObj->TypeLink->TypeInfos['topid'] ){  $pv->Fields['currentstyle'] = $currentstyle ? $currentstyle : 'current';  }else{  $pv->Fields['currentstyle'] = '';  }

保存后生效。

织梦DEDE三级栏目导航实现 亲测有效相关推荐

  1. 织梦{dede:channel}无子栏目不显示同级栏目的两种修改方法

    如何让织梦{dede:channel type='son'}无子栏目时不显示同级栏目呢? 方法一: 打开:include\taglib\channel.lib.php文件. 找到 if($type== ...

  2. dede图片上传php,织梦cms增加栏目(栏目图片)上传缩略图功能

    很早之前使用DedeCMS的时候,栏目设置里还有一个栏目图片的选项,后来DedeCMS更新到5.7版本之后,这个很实用的功能竟然没取消了,导致很多时候我们在用DedeCMS建站,处理栏目显示样式这一块 ...

  3. currentstyle 织梦_织梦DEDE栏目高亮channel属性currentstyle采用详解

    织梦DEDECMScms被点击的栏目高亮显示办法详解,织梦DEDE栏目高亮channel属性currentstyle采用详解,废话不多说直接举例说明:织梦DEDEchannel属性currentsty ...

  4. 织梦dede所有标签调用方法大全

    2019独角兽企业重金招聘Python工程师标准>>> 织梦dede所有标签调用方法大全!非常实用! 关键描述调用标签: <meta name="keywords&q ...

  5. 织梦新建顶级栏目打不开,解决办法

    织梦新建顶级栏目打不开,解决办法 问题:织梦网站,新建一个栏目,地址是:/xinjianlanmu/,然后更新后,首页连接地址是http://www.*******.cn/xinjianlanmu/, ...

  6. 织梦dede文章列表调用标签的用法和规则

    织梦dede列表标签在任何模板的网站中都可能会使用到,而且我们在仿站的时候也经常要使用到列表标签.这里主机吧就给大家讲一下文章列表以及图片列表.软件列表以及分类信息列表标签的用法,和结合div+css ...

  7. dede flag php,织梦dede:list按flag属性调用文档

    织梦dede:list默认在栏目列表页是不支持按flag输出的,想要按flag调用指定属性的文档和分页,我们可以这样做 伸手党 直接下载 如果不想改的小伙伴可以直接下载我已经改好的这个文件,先备份你的 ...

  8. dedecms(织梦)给栏目添加图标全攻略

    由于本站的特殊需要要为本站的某一个栏目下的所有栏目要添加图标,但是由于dedecms的栏目不像phpcms能给栏目添加图标.所以本人在网上找了很多资料,但都不是很全.通过参考这些资料最后终于实现了栏目 ...

  9. 织梦无法更新栏目html,织梦CMS无法更新生成栏目以及HTML文档问题总汇

    这篇文章主要为大家详细介绍了织梦CMS无法更新生成栏目以及HTML文档问题总汇,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴. 很多盆友都喜欢用织梦dedecms ...

最新文章

  1. react服务端/客户端,同构代码心得
  2. 关于AJAX跨域调用ASP.NET MVC或者WebAPI服务的问题及解决方案
  3. K2新网站(官网和BPM社区)正式上线了
  4. 深度学习算法 第四期
  5. Windows7下通过VHD安装Windows8系统
  6. python求最大值代码的方式_python使用分治法实现求解最大值的方法
  7. 【Luogu】P1972HH的项链(链表+树状数组)
  8. 安装mongodb以及设置为windows服务 详细步骤
  9. SylixOS 缺页异常
  10. Java常用实现八种排序算法与代码实现
  11. Spring学习笔记 Spring项目介绍
  12. 计算机课word实验总结,大学计算机操作实践报告【实验8】Word2010综合实验
  13. 也谈谈印度人的职场话题
  14. Python实训day08am【网络爬虫selenium、图像处理入门】
  15. Git 与 Github 基础一步入门
  16. 安卓中自定义view控件代替radiogroup实现颜色渐变效果的写法
  17. 2021-02-03-ctf-如来十三掌
  18. TrueLicense实现产品License验证
  19. andorid开发关键技术
  20. php psl标准,API 5L PSL1与PSL2标准的区别

热门文章

  1. linux中tmount命令,Linux中mount命令起什么作用呢?
  2. 淘宝助理导出的csv文件使用的是什么编码,您猜?
  3. python之多继承广度优先C3算法原理通俗易懂的讲解
  4. “数据不会说谎”,如何看穿大数据背后的真相?
  5. 转载的socks4 socks5 rfc1928一大堆
  6. Linux下最简单的动态域名用法
  7. 51实现微信蹦一蹦外挂demo
  8. TC写的“泡泡堂”(1)
  9. unix c入门环境搭建
  10. vscode无法打开源文件的问题