It’s not exactly what I wanted but it’s very close.
As per the codex for wp_nav_menu()
…
$depth
(integer) (optional) How many levels of the hierarchy are to be included where 0 means all. -1 displays links at
any depth and arranges them in a single, flat list.
Default: 0
So I did this…
wp_nav_menu(
array(
'container_class' => 'menu-top-menu-container',
'theme_location' => 'secondary',
'depth' => -1
)
);
I tried 'depth' => 1
to designate a pure single level, however, this does not prevent the creation of submenu items in the Dashboard. The end result is the same as my CSS hack. The Admin would not know why his new submenu items are not showing up.
I ended up using 'depth' => -1
, which forces all menu items to a single level, including any submenu items that might be created. At least the Admin should notice what’s going on here when he sees his submenu item show on the same level as everything else.
I’m still curious about anything that can be done to tweak the menu editing screen in the Dashboard without having to edit the core WordPress files.