Skip to content

Instantly share code, notes, and snippets.

@siriokun
Created October 27, 2017 00:24
Show Gist options
  • Save siriokun/8fceb602edd7bbcb310a010fa1ee85af to your computer and use it in GitHub Desktop.
Save siriokun/8fceb602edd7bbcb310a010fa1ee85af to your computer and use it in GitHub Desktop.
WordPress Custom Menu Walker for Bootstrap 4
/**
* WordPress Custom Menu Walker for Bootstrap 4.
*/
add_filter ( 'nav_menu_css_class', 'navitemclass', 10, 4 );
function navitemclass( $classes, $item, $args, $depth ){
$classes[] = 'nav-item';
return $classes;
}
add_filter('walker_nav_menu_start_el', 'navlinkclass', 10, 4);
function navlinkclass($item_output, $item, $depth, $args) {
$menu_locations = get_nav_menu_locations();
if ( has_term($menu_locations['top-menu'], 'nav_menu', $item) ) {
$item_output = preg_replace('/<a /', '<a class="nav-link" ', $item_output, 1);
if ($item->menu_order == 1){
$item_output = preg_replace('/<a /', '<a class="nav-link active" ', $item_output, 1);
}
}
return $item_output;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment