summaryrefslogtreecommitdiffstats
path: root/hugolib/site.go
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2019-04-19 09:18:12 +0200
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2019-04-19 10:29:52 +0200
commitea529c847ebc0267c6d0426cc8f77d5c76c73fe4 (patch)
tree501375833664d888e26e220b721dc375662895a2 /hugolib/site.go
parent6c80acbd5e314dd92fc075551ffabafaae01dca7 (diff)
Fix menu URL when multiple permalinkable output formats
In Hugo `0.55` we introduced the `permalinkable` config attribute on Output Format, default enabled for `AMP` and `HTML`. This meant that a Page could have different `RelPermalink` and `Permalink` depending on the rendering format. The menu `URL` did not reflect that fact. Fixes #5849
Diffstat (limited to 'hugolib/site.go')
-rw-r--r--hugolib/site.go7
1 files changed, 4 insertions, 3 deletions
diff --git a/hugolib/site.go b/hugolib/site.go
index 693c79f67..495225093 100644
--- a/hugolib/site.go
+++ b/hugolib/site.go
@@ -1416,7 +1416,8 @@ func (s *Site) getMenusFromConfig() navigation.Menus {
}
menuEntry.MarshallMap(ime)
- menuEntry.URL = s.Info.createNodeMenuEntryURL(menuEntry.URL)
+ // TODO(bep) clean up all of this
+ menuEntry.ConfiguredURL = s.Info.createNodeMenuEntryURL(menuEntry.ConfiguredURL)
if ret[name] == nil {
ret[name] = navigation.Menu{}
@@ -1477,7 +1478,7 @@ func (s *Site) assembleMenus() {
me := navigation.MenuEntry{Identifier: id,
Name: p.LinkTitle(),
Weight: p.Weight(),
- URL: p.RelPermalink()}
+ Page: p}
flat[twoD{sectionPagesMenu, me.KeyName()}] = &me
}
}
@@ -1506,7 +1507,7 @@ func (s *Site) assembleMenus() {
_, ok := flat[twoD{p.MenuName, p.EntryName}]
if !ok {
// if parent does not exist, create one without a URL
- flat[twoD{p.MenuName, p.EntryName}] = &navigation.MenuEntry{Name: p.EntryName, URL: ""}
+ flat[twoD{p.MenuName, p.EntryName}] = &navigation.MenuEntry{Name: p.EntryName}
}
flat[twoD{p.MenuName, p.EntryName}].Children = childmenu
}