织梦实现嵌套li加currentstyle的二级菜单
来源:本站原创|时间:2021-08-05|栏目:dedecms|点击: 次
织梦dedecms实现嵌套li加currentstyle的二级菜单非常麻烦,所以官方之前的版本也使用了js来实现,而且为此还hardcode了一下编码到标签库里面,具体见 \include\taglib\channel.lib.php
line100
//检查是否有子栏目,并返回rel提示(用于二级菜单)
及 line130
$row['rel'] = " rel='dropmenu{$row['id']}'";
可见,如果需要二级菜单加当前样式,那么头部
<ul>
<li><a href='{dede:global.cfg_cmsurl/}/'>
<span class="cn">首页</span>
<span class="en">Home</span>
</a></li>
{dede:channel type='top' row='10' currentstyle='<li class="current"><a href="~typelink~" ~rel~>#<span class="cn">~typename~</span><span class="en">~dirName~</span></a></li>'
}
<li>
<a href='[field:typeurl/]' [field:rel/]>
<span class="cn">[field:typename/]</span>
<span class="en">[field:typedir runphp='yes' commet="获得最后目录名,英文"]
$l=split("/", @me);
@me=array_pop($l);
[/field:typedir]</span>
</a>
</li>
{/dede:channel}
</ul>
rel的属性是必须的
而且在底部
{dede:channelartlist typeid='top'}
<ul id="dropmenu{dede:field.typeid/}">
{dede:channel type='son' noself='yes'}
<li><a href="[field:typelink/]">[field:typename/]</a></li>
{/dede:channel}
</ul>
{/dede:channelartlist}
dropmenu的关键字也是必须的。
剩下的就是css和js的工作了。
上一篇:织梦网站文章列表隔行换色的方法
栏 目:dedecms
下一篇:Dedecms更新缓存提示/data/cache/inc_catalog_base.inc
本文标题:织梦实现嵌套li加currentstyle的二级菜单
本文地址:https://www.xiuzhanwang.com/a1/dedecms/15912.html
您可能感兴趣的文章
- 08-05Dedecms文件目录结构解说(能知道织梦每个文件有什么用)
- 08-05织梦DedeCMS获取当前栏目文章数量
- 08-05织梦模板如何添加和调用自定义字段的方法
- 08-05织梦DedeCMS调用显示discuz里面主题的方法
- 08-05限制织梦会员每天投稿数量方法
- 08-05常用的织梦dedecms安全设置集合整理
- 08-05织梦教程:后台编辑器添加中文字体方法
- 08-05织梦修改文章排序到第一位如何解决?
- 08-05dede副栏目调用支持arclist标签
- 08-05织梦教程:手把手教你让dedecms禁止发布重复文章