По моему мнению, использование CSS для «скрытия» нежелательных уровней меню в лучшем случае является громоздким, а в худшем - «хакерским». Лично мне никогда не нравится выводить на страницу что-либо, чего не должно быть (когда этого можно избежать).
В настоящее время Wordpress не оказывает нам никакой пользы, так как не предлагает встроенную в wp_nav_menu опцию для ограничения глубины начала меню.
Я пробовал разные ходоки, виджеты и плагины, чтобы решить эту проблему, но я никогда не был очень доволен решениями, которые попробовал. Например, решение в плагине выше требует, чтобы вы передали идентификатор нужного подменю.
Я написал свой собственный плагин, который расширяет wp_nav_menu для добавления опции 'start_depth'. Это работает автоматически на любой подстранице без указания чего-либо.
Просто используйте такой код после установки плагина:
wp_nav_plus(array('theme_location' => 'primary_navigation', 'start_depth' => 1));
для всех, кто заинтересован, доступен на моем сайте: https://mattkeys.me/products/wp-nav-plus/