删除 WordPress 导航菜单的多余 CSS 选择器

4,286
删除 WordPress 导航菜单的多余 CSS 选择器
  • 4.75 / 5 5
4.75分(4票)

在默认情况下,WordPress 的导航菜单会输出很多如menu-itemmenu-item-type-taxonomymenu-item-object-category等加上 id 组成的CSS 选择器,无疑,对于一些人来说,这些选择器导致整个html 格式变得难看,看着碍眼的东西最好是将它去掉,下面介绍删除(去除)WordPress 导航菜单的多余 CSS 选择器的方法。

如本站 DeveWork.com 的导航菜单的相关CSS 代码如下:

代码如下,还是加入到主题的functions.php 文件中(代码来源网络,作者未知):

1
2
3
4
5
6
7
8
9
10
11
12
add_filter('nav_menu_css_class' , 'special_nav_class' , 10 , 2);
function special_nav_class($classes, $item){
$current_and_home = array("current-menu-item", "menu-item-home", 'last');
$classes = array_intersect($item->classes,$current_and_home);
//保留有需要的 class
return $classes;
}
add_filter('nav_menu_item_id' , 'special_nav_item_id' , 10 , 2);
function special_nav_item_id($item_id, $item){
$item_id = ""; //去除 id
return $item_id;
}

之后,HTML 代码应该清爽不少。

该方法只能去除id 属性,class 属性不能去除。说实话,没必要不建议折腾这个。

喵~本文目前有1条留言,欢迎发表评论!

  1. 传说中的沙发
    :
    [回复]

打破沉默,我来发表评论鸟~