Wordpress - Hide main div if wp_nav_menu is empty
Assign the menu to a string:
$menu = wp_nav_menu(
array (
'echo' => FALSE,
'fallback_cb' => '__return_false'
)
);
if ( ! empty ( $menu ) )
{
echo '<div class="navmain2">' . $menu . '</div>';
}
If you wanted to check there is a menu assigned you could use has_nav_menu(). Passing through the registered menu id as registered via register_nav_menu()
<?php if ( has_nav_menu( 'primary' ) ) { ?>
<div class="navmain2">
</div>
<?php }
Note: This function will output the div if the location primary
has a menu assigned, it will also output the div if the menu is assigned and empty