Dazu gibt es viele Wege.
Der einfachste wäre, das Untermenü per CSS-Regel generell auszublenden und für die gewünschte Seite eine zusätzliche CSS-Regel (Customizer: Zusätzliches CSS) anzulegen, mit der das Untermenü wieder eingeblendet wird. WordPress fügt für jede Seite eine eigene CSS-Klasse im <body>
-Tag ein, das du dafür verwenden könntest. Nehmen wir an*, das Untermenü ist eine unsortierte Liste mit der Klasse „submenu“, dann wäre die CSS-Regel
ul.submenu { display:none; }
page-id-42 ul.submenu,
parent-pageid-68 ul.submenu { display: block; }
(*da du keine Website angegeben hast und mir keine weiteren Informationen vorliegen, kann ich nur beispielhaft erklären, wie es geht.)
Alternativ könnest du auch in einem Child Theme ein if-Statement verwenden (if( is_page( 'Mit Untermenü') ) { … }
, das unterschiedliche Menüs aufruft. Das ist natürlich aufwändiger.
Für das Widget kannst du ein Plugin wie Widget Logic verwenden, dass das Untermenü in der Sidebar nur auf der entsprechenden Seite anzeigt.
Vielleicht auch per Plugin/Widget?
https://de.wordpress.org/plugins/tags/submenu/
Gruß, Torsten