diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2019-04-19 09:18:12 +0200 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2019-04-19 10:29:52 +0200 |
commit | ea529c847ebc0267c6d0426cc8f77d5c76c73fe4 (patch) | |
tree | 501375833664d888e26e220b721dc375662895a2 /hugolib/site.go | |
parent | 6c80acbd5e314dd92fc075551ffabafaae01dca7 (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.go | 7 |
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 } |