Is there a way to change the child <ul class="sub-menu">
generated by WordPress itself to a custom class name?
I know the parent <ul>
you can remove or change the name with 'menu_class' => 'newname'
.
I couldn't find the answer. Itried 'submenu_class' => 'customname'
. It seems logic to me, but obviously that is no the right one.
any ideas?
You can just change it in wordpress file. location : www/project_name/wp-includes/nav-menu-template. php. open this file and at line number 49, change the name of sub-menu class with your custom class.
Usage. wp_nav_menu( $args ); Given a theme_location parameter, the function displays the menu assigned to that location. If no such location exists or no menu is assigned to it, the parameter fallback_cb will determine what is displayed.
To add a custom navigation menu, the first thing you need to do is register your new navigation menu by adding this code to your theme's functions. php file. add_action( 'init' , 'wpb_custom_new_menu' ); You can now go to Appearance » Menus page in your WordPress admin and try to create or edit a new menu.
There is no option for this, but you can extend the 'walker' object that WordPress uses to create the menu HTML. Only one method needs to be overridden:
class My_Walker_Nav_Menu extends Walker_Nav_Menu { function start_lvl(&$output, $depth) { $indent = str_repeat("\t", $depth); $output .= "\n$indent<ul class=\"my-sub-menu\">\n"; } }
Then you just pass an instance of your walker as an argument to wp_nav_menu
like so:
'walker' => new My_Walker_Nav_Menu()
This is an old question and I'm not sure if the solution I'm going to mention was available by the time you asked, but I think it's worth mentioning. You can achieve what you want by adding a filter to nav_menu_submenu_css_class
. See the example below - you can replace my-new-submenu-class
by the class(es) you want:
function my_nav_menu_submenu_css_class( $classes ) { $classes[] = 'my-new-submenu-class'; return $classes; } add_filter( 'nav_menu_submenu_css_class', 'my_nav_menu_submenu_css_class' );
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With