diff --git a/packages/framework/src/Framework/Features/Navigation/NavigationMenuGenerator.php b/packages/framework/src/Framework/Features/Navigation/NavigationMenuGenerator.php index d2bd01921f8..4d787584c0c 100644 --- a/packages/framework/src/Framework/Features/Navigation/NavigationMenuGenerator.php +++ b/packages/framework/src/Framework/Features/Navigation/NavigationMenuGenerator.php @@ -96,10 +96,17 @@ protected function usesGroups(): bool return $this->routes->first(fn (Route $route): bool => filled($route->getPage()->navigationMenuGroup())) !== null; } else { - return Config::getString('hyde.navigation.subdirectories', 'hidden') === 'dropdown'; + return Config::getString('hyde.navigation.subdirectories', 'hidden') === 'dropdown' || $this->hasGroupExplicitlySetInFrontMatter(); } } + private function hasGroupExplicitlySetInFrontMatter(): bool + { + return $this->routes->contains(function (Route $item): bool { + return ($item->getPage()->navigationMenuGroup() !== null) && (! $item->getPage() instanceof DocumentationPage); + }); + } + protected function canAddRoute(Route $route): bool { if (! $route->getPage()->showInNavigation()) {