2013-08-16 90 views
1

我使用wp_nav_menu在WordPress的创造我的导航在wp_nav_menu

输出添加菜单项ID与此类似(我已删除的href链接)

<nav id="pageNav"> 
     <ul id="menu-headernav" class="menu"> 
      <li><a href="">Home</a></li> 
     <li><a href="">About</a></li> 
     <li><a href="">Services</a></li> 
     <li><a href="">Work</a></li> 
     <li><a href="">Contact</a></li> 
     </ul>   
    </nav> 

我需要每个样式分开链接。

如何在菜单中为每个(li)或(a)添加一个id以便我可以设置它的样式。

回答

3

li标签有一个由WordPress生成的ID。至少他们在我的安装。

对于a标记,您可以通过在主题的function.php文件中写入函数来添加id属性,并挂接到nav_menu_link_attributes过滤器。

在退房WordPress的核心: http://core.trac.wordpress.org/browser/tags/3.6/wp-includes/nav-menu-template.php#L89

function my_id_attribute ($atts, $item, $args) { 
    //develop your anchor tag ID nomenclature I'll call it $id 
    $atts['id'] = $id; 
    return $atts; 
    } 
add_filter('nav_menu_link_attributes', 'my_id_attribute', 3, 10); 
2

您可以在WordPress中添加一个类为每个菜单项。转到“外观” - >“菜单” - >,然后在屏幕选项面板中,点击复选框激活“CSS类”。从那里你可以分配独特的选择器到你的CSS目标菜单项。

+0

这是最简单的方法。最好不要使用钩子,除非你真的需要它。 – Armstrongest

+0

这对了解情况非常有用,但是(当前)不允许按照请求设置“id”属性。 – Sean