Advertisement
Guest User

parent menu item class

a guest
Aug 6th, 2012
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.21 KB | None | 0 0
  1. <?php
  2.  
  3.  
  4. // Widget Settings
  5.  
  6. if ( function_exists('register_sidebar') )
  7. register_sidebar(array(
  8. 'name' => 'Left Navigation',
  9. 'before_widget' => '<div class="left-widget">',
  10. 'after_widget' => '</div>',
  11. 'before_title' => '<div class="widget-header">',
  12. 'after_title' => '</div>',
  13. ));
  14.  
  15. if ( function_exists('register_sidebar') )
  16. register_sidebar(array(
  17. 'name' => 'Right Navigation',
  18. 'before_widget' => '<div class="right-widget">',
  19. 'after_widget' => '</div>',
  20. 'before_title' => '<div class="widget-header">',
  21. 'after_title' => '</div>',
  22. ));
  23.  
  24.  
  25. // add parent menu item class
  26.  
  27. add_filter('wp_nav_menu_objects', function ($items) {
  28. $hasSub = function ($menu_item_id, &$items) {
  29. foreach ($items as $item) {
  30. if ($item->menu_item_parent && $item->menu_item_parent==$menu_item_id) {
  31. return true;
  32. }
  33. }
  34. return false;
  35. };
  36.  
  37. foreach ($items as &$item) {
  38. if ($hasSub($item->ID, &$items)) {
  39. $item->classes[] = 'menu-parent-item'; // all elements of field "classes" of a menu item get join together and render to class attribute of <li> element in HTML
  40. }
  41. }
  42. return $items;
  43. });
  44.  
  45. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement