使用WordPress的朋友应该知道wmh_nav_menu函数是不能给a标签添加额外的属性的,比如class, data等,所以这就我们需要手动另外添加了。
给导航菜单的a标签添加class和data属性的方法也很简单,在当前使用的WordPress主题的functions.php文件中添加以下代码即可:
function xintheme_menu_link_atts( $atts, $item, $args ) {
$atts['class'] = 'nav-link';
$atts['data-link-alt'] = $item->title;
return $atts;
}
add_filter( 'nav_menu_link_attributes', 'xintheme_menu_link_atts', 10, 3 );
我们还可以移除菜单导航中自带的多余Class类名,具体方法如下:
//去除菜单多余类名
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_intersect($var, array('current-menu-item','current-post-ancestor','current-menu-ancestor','current-menu-parent')) : '';
}