Here’s a quick code snippet to:
- Assign an ID to the menu
- Change the menu class
- Append to the menu class
add_filter( 'genesis_do_nav', 'override_do_nav', 10, 3 );
function override_do_nav($nav_output, $nav, $args) {
$args['menu_id'] = 'the_id_you_want';
$args['menu_class'] = 'class1 class2'; // replace what was there
$args['menu_class'] .= ' class3'; // or append to it
// check which function should be used to build the nav
// rebuild the nav using the updated arguments
if ( genesis_get_option( 'nav' ) ) {
if ( has_nav_menu( 'primary' ) ) {
$nav = wp_nav_menu( $args );
} elseif ( 'nav-menu' != genesis_get_option( 'nav_type', 'genesis-vestige' ) ) {
$nav = genesis_nav( $args );
}
}
// return the modified result
return sprintf( '%2$s%1$s%3$s', $nav, genesis_structural_wrap( 'nav', 'open', 0 ), genesis_structural_wrap( 'nav', 'close', 0 ) );
}
Credit: Evan Mattson and Daniel Zimmermann on WordPress.StackExchange.com – Using a filter to modify Genesis wp_nav_menu