WordPress文章页实现所属分类高亮显示
如何在Wordpress文章页实现所属分类高亮显示呢?当用户点击某篇文章,文章所属分类自动添加一个样式高亮显示。效果如下图:
第一步:获取文章所属于分类,这个可以隐藏。
<div id="fltop" style="display:none;">
<?php the_category(', ') ?>
</div>
第二步:给顶级分类的二级分类列表添加一个ID;(方法见:文章页获取顶部父类下所有子分类列表)
<ul id="sidebarleft">
……
</ul>
第三步:使用JS获取所属分类的A标签URL和列表所有A标签的URL,并且进行对比判断,如果包含就给A标签添加一个class类:current-cat;
<script>
//代码来源:学做网站论坛 https://www.xuewangzhan.net/
//获取分类A标签和列表所有的a标签(返回节点对象)
var myNav = document.getElementById("sidebarleft").getElementsByTagName("a");
var myURL = document.getElementById("fltop").getElementsByTagName("a");
//循环div下面所有的链接,
for(var i=0;i<myNav.length;i++){
//获取每一个a标签的herf属性
var links = myNav[i].getAttribute("href");
var myURL2 = myURL[0].getAttribute("href");
//查看div下的链接是否包含当前窗口,如果存在,则给其添加样式
if(myURL2.indexOf(links) != -1){
myNav[i].className="current-cat";
}
}
</script>
第四步:在CSS中添加一个current-cat样式,这样就实现了点击后高度显示效果。