删除wordpress菜单代码中多余的CSS选择器id或class
在wordpress网站中,使用默认代码调用wordpress菜单,会出现下面代码,会有很多选择器,会让我们感觉代码不够简洁。
<li id="menu-item-6" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-home menu-item-6"><a href="#">首页</a></li> <li id="menu-item-13" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-13"><a href="#">网站</a></li> <li id="menu-item-8" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-8"><a href="#">WordPress主题</a></li>
如果要简化代码可以直接在function.php文件中加入功能函数:
/**
* 移除菜单的多余CSS选择器
* From https://www.wpdaxue.com/remove-wordpress-nav-classes.html
*/
add_filter('nav_menu_css_class', 'my_css_attributes_filter', 100, 1);
add_filter('nav_menu_item_id', 'my_css_attributes_filter', 100, 1);
add_filter('page_css_class', 'my_css_attributes_filter', 100, 1);
function my_css_attributes_filter($var) {
return is_array($var) ? array() : '';}
这样就可以输出简单的代码了
<li><a href="#">主题</a></li> <li><a href="#">WordPress</a></li> <li><a href="#">WordPress主题</a></li>
也可以使用其他调用代码:
<?php
echo strip_tags(wp_nav_menu(
array('theme_location' => 'head_nav4',
'container_class' => 'user_menu',
'echo' => false,
'items_wrap' => '%3$s')
), '<li><a>');
?>
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END


















