diff --git a/layouts/partials/GetMenu b/layouts/partials/GetMenu
index 9647a925ec475e7f33fb66bed9d3990afdce398d..f743ee705db93df4dc4802fa7cd5249becd12a34 100644
--- a/layouts/partials/GetMenu
+++ b/layouts/partials/GetMenu
@@ -1,4 +1,13 @@
 {{ $kind := . }}
 {{ $menus := index site.Data.menus (printf "%s" site.Language) }}
-{{ $menu := index $menus $kind }}
+{{ $menu := "" }}
+// Try to get menus from the data/menus/<lang> directory
+{{ if (and $menus (isset $menus $kind)) }}
+  // Menu found in data/menus/<lang>
+  {{ $menu = index $menus $kind }}
+{{ else }}
+  // Fallback to menu in the data/menus directory
+  {{ $menu = index site.Data.menus $kind }}
+{{ end }}
+
 {{ return $menu }}
\ No newline at end of file