i want add current-menu-item class li if single page. trying using wp_nav_menu_objects hook custom function don't know how particular menu item , set condition assign class it. here code.
add_filter('wp_nav_menu_objects' , 'my_menu_class'); function my_menu_class($menu) { //if single post page of particular post type (in case 'property') if( is_single() && is_post_type_archive( 'property' ) ) { //get menu items foreach($menu $key => $item) { // check if menu item "commercial property" if($item == "commercial property") { //assign class menu item $menu[$key]->classes[] = 'current-menu-item'; } } } return $menu; } this code represent logic. please suggest if need can achieved method or there better approach it.
thanks.
in wp theme, wanted remove wordpess menu classes, add own , on specific condition ( example if menu has active class ) add class. here s code
function add_custom_classes($classes){ $newclasses[] = "navigation__item"; if( in_array('current_page_item', $classes) ){ array_push($newclasses, "navigation__item-active"); } return $newclasses; } add_filter('nav_menu_css_class', 'add_custom_classes', 100, 1); add_filter('nav_menu_item_id', 'add_custom_classes', 100, 1); add_filter('page_css_class', 'add_custom_classes', 100, 1); you can add own conditions
Comments
Post a Comment