我没有足够的代表发表评论,但只是好奇为什么不使用原生 WordPress 菜单?如果你使用 wp_nav_menu(); 也会让你的生活更轻松。
见这里:http ://codex.wordpress.org/Function_Reference/wp_nav_menu
以这种方式正确使用菜单将自动将此类应用于活动菜单项:
.current-menu-item
这只是本机功能。如果您决定这样做,请告诉我,我很乐意提供帮助。
在您的 functions.php 文件中添加:
register_nav_menus('menu_slug' => 'Menu Name');
这将允许您在后端分配一个菜单。转到外观-> 菜单。
然后在您尝试调用菜单的位置添加以下代码:
wp_nav_menu('menu'=> 'menu_slug');
然后,这将拉出您在后端创建的菜单。您也可以将许多参数传递给该 wp_nav_menu 函数。
$defaults = array(
'theme_location' => '',
'menu' => '',
'container' => 'div',
'container_class' => '',
'container_id' => '',
'menu_class' => 'menu',
'menu_id' => '',
'echo' => true,
'fallback_cb' => 'wp_page_menu',
'before' => '',
'after' => '',
'link_before' => '',
'link_after' => '',
'items_wrap' => '<ul id="%1$s" class="%2$s">%3$s</ul>',
'depth' => 0,
'walker' => ''
);
如果您以这种方式使用它,请将此代码添加到您的主题中,然后:
wp_nav_menu ( $defaults );
您会注意到,如果您这样做,WordPress 会自动为活动菜单项提供当前类。我希望这有帮助。老实说,这是最好的(正确的)方法。在某些时候,您可能想要切换菜单项的排列或添加子菜单或有一个您不想显示的页面。使用这样的菜单将极大地帮助您。