function add_menu_classes($menu) { $first = $lastorder = false; $i = 0; $mc = count($menu); foreach ($menu as $order => $top) { $i++; if (0 == $order) { // dashboard is always shown/single $menu[0][4] = add_cssclass('active', $top[4]); $lastorder = 0; continue; } if (0 === strpos($top[2], 'separator') && false !== $lastorder) { // if separator $first = true; $c = $menu[$lastorder][4]; $menu[$lastorder][4] = add_cssclass('', $c); continue; } if ($first) { $c = $menu[$order][4]; $menu[$order][4] = add_cssclass('menu-top-first', $c); $first = false; } if ($mc == $i) { // last item $c = $menu[$order][4]; $menu[$order][4] = add_cssclass('menu-top-last', $c); } $lastorder = $order; } return apply_filters('add_menu_classes', $menu); }
function add_menu_classes($menu) { $first = $lastorder = false; $i = 0; $mc = count($menu); foreach ($menu as $order => $top) { $i++; if (0 == $order) { // dashboard is always shown/single $menu[0][4] = add_cssclass('menu-top-first', $top[4]); $lastorder = 0; continue; } if (0 === strpos($top[2], 'separator') && false !== $lastorder) { // if separator $first = true; $c = $menu[$lastorder][4]; $menu[$lastorder][4] = add_cssclass('menu-top-last', $c); continue; } if ($first) { $c = $menu[$order][4]; $menu[$order][4] = add_cssclass('menu-top-first', $c); $first = false; } if ($mc == $i) { // last item $c = $menu[$order][4]; $menu[$order][4] = add_cssclass('menu-top-last', $c); } $lastorder = $order; } /** * Filter administration menus array with classes added for top-level items. * * @since 2.7.0 * * @param array $menu Associative array of administration menu items. */ return apply_filters('add_menu_classes', $menu); }
<?php function add_cssclass($add, $class) { $class = empty($class) ? $add : ($class .= ' ' . $add); return $class; } add_cssclass('test', $a);