启用菜单时,向Body标记添加一个类

时间:2015-11-22 作者:jquery

问题已编辑

当菜单位于menu setting > theme locations 已选中。

如以下截图所示:

theme locations

如果我有两个菜单,它能给body标签添加两个不同的类吗?

我想用这个类来控制导航切换图标等。

1 个回复
SO网友:Mark Kaplun

使用has_nav_menu 检测菜单是否在中配置body_class filter.

类似于

add_filter( \'body_class\', \'wpse209469_body_class\' );
function wpse209469_body_class( $classes ) {

    if (has_nav_menu(\'primary-menu\'))
      $classes[] = \'primary-menu\';

    return $classes;
}
如果有两个菜单,可以更改条件以匹配这两个菜单,或者只需执行两个过滤器。可能有一种方法可以枚举所有菜单并为它们添加类,但这可能是一种过分的做法。