hugo

Unnamed repository; edit this file 'description' to name the repository.

git clone git://git.shimmy1996.com/hugo.git
commit 32508045d36a0ca70d10216afc78e1804aa2186d
parent e521c9a36d89dfc2f4117af4bca5c2a0731eed61
Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Date:   Wed, 21 Jul 2021 11:34:26 +0200

navigation: Check Page first in URL()

 In Hugo #8776 we added `pageRef`, a way to connect menu items in site config to pages.

This means that you now can have both a Page and a configured URL.

Having the configured URL as a fallback if the Page isn't found is obviously more useful, especially in multilingual sites.

See #8776

Diffstat:
Mnavigation/menu.go | 12++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/navigation/menu.go b/navigation/menu.go
@@ -46,15 +46,19 @@ type MenuEntry struct {
 }
 
 func (m *MenuEntry) URL() string {
-	if m.ConfiguredURL != "" {
-		return m.ConfiguredURL
-	}
 
+	// Check page first.
+	// In Hugo 0.86.0 we added `pageRef`,
+	// a way to connect menu items in site config to pages.
+	// This means that you now can have both a Page
+	// and a configured URL.
+	// Having the configured URL as a fallback if the Page isn't found
+	// is obviously more useful, especially in multilingual sites.
 	if !types.IsNil(m.Page) {
 		return m.Page.RelPermalink()
 	}
 
-	return ""
+	return m.ConfiguredURL
 }
 
 // A narrow version of page.Page.