$conf, $runtime; function_exists('chdir') AND chdir(APP_PATH); $r = 'mysql' == $conf['cache']['type'] ? website_set('runtime', $runtime) : cache_set('runtime', $runtime); } function runtime_truncate() { global $conf; 'mysql' == $conf['cache']['type'] ? website_set('runtime', '') : cache_delete('runtime'); } register_shutdown_function('runtime_save'); ?>menus - menu_class showing up on DIV instead of UL|Programmer puzzle solving
最新消息:Welcome to the puzzle paradise for programmers! Here, a well-designed puzzle awaits you. From code logic puzzles to algorithmic challenges, each level is closely centered on the programmer's expertise and skills. Whether you're a novice programmer or an experienced tech guru, you'll find your own challenges on this site. In the process of solving puzzles, you can not only exercise your thinking skills, but also deepen your understanding and application of programming knowledge. Come to start this puzzle journey full of wisdom and challenges, with many programmers to compete with each other and show your programming wisdom! Translated with DeepL.com (free version)

menus - menu_class showing up on DIV instead of UL

matteradmin8PV0评论

I was having an issue where my menu was being created using:

wp_nav_menu(array('theme_location' => 'main_menu', 'menu_class' => 'sf-menu''))

The resulting HTML was like this:

<div class='sf-menu'><ul><li...></ul></div>

As you can see, the $menu_class argument was being applied to the div instead of the ul. And the ul doesn't even have an id attribute despite using the default items_wrap.

I was having an issue where my menu was being created using:

wp_nav_menu(array('theme_location' => 'main_menu', 'menu_class' => 'sf-menu''))

The resulting HTML was like this:

<div class='sf-menu'><ul><li...></ul></div>

As you can see, the $menu_class argument was being applied to the div instead of the ul. And the ul doesn't even have an id attribute despite using the default items_wrap.

Share Improve this question asked Aug 6, 2014 at 18:23 DavGarciaDavGarcia 1114 bronze badges
Add a comment  | 

2 Answers 2

Reset to default 1

The reason this was happening was simple - I had just installed the theme and had not yet associated a menu with the 'main_menu' theme location. Once I had the menu assigned, the markup generated acted as expected.

To assign a menu, go to Appearance > Menus then select the Manage Locations tab. On there you can choose which menu goes with the theme location. Save your changes and the markup should then be correct.

You can try this one.

<?php wp_nav_menu(array(
    'theme_location' => 'main_menu', 
    'container' => 'ul',
    'container_class'   =>  'sf-menu'
));?>
Post a comment

comment list (0)

  1. No comments so far