diff --git a/exampleSite/config/_default/params.toml b/exampleSite/config/_default/params.toml index 035ffc22..dc0fe94f 100644 --- a/exampleSite/config/_default/params.toml +++ b/exampleSite/config/_default/params.toml @@ -75,7 +75,7 @@ privacy_pack = false # Enable visitors to edit pages? # `repo` defines the repository URL. `editable` defines which page types can be edited. -edit_page = {repo_url = "https://github.com/gcushen/hugo-academic", repo_branch = "master", editable = {docs = true, page = false, post = false}} +edit_page = {repo_url = "https://github.com/gcushen/hugo-academic", content_dir = "", repo_branch = "master", editable = {docs = true, page = false, post = false}} ############################ ## Contact details diff --git a/layouts/partials/page_edit.html b/layouts/partials/page_edit.html index db836107..1e0d8fd9 100644 --- a/layouts/partials/page_edit.html +++ b/layouts/partials/page_edit.html @@ -1,8 +1,16 @@ {{ if site.Params.edit_page }}{{/* Make `edit_page` optional in `params.toml` - prevent errors if it's removed. */}} {{ if site.Params.edit_page.repo_url | and (index site.Params.edit_page.editable .Type) | and (ne .Params.editable false) | or .Params.editable }} -{{ $content_subfolder := cond site.IsMultiLingual (cond (ne .Site.LanguagePrefix "") (printf "%s/" .Site.LanguagePrefix) "") "" }} +{{/* Get language subfolder for multilingual sites. */}} +{{/* Limitations: the subfolder param, `.contentDir`, is unexposed in the Hugo `site` API so we attempt to workaround this issue. */}} +{{ $content_dir := "content" }} +{{ if site.Params.edit_page.content_dir }} + {{ $content_dir = site.Params.edit_page.content_dir }} +{{else}} + {{/* Attempt to get content dir from the LanguagePrefix URI, but defaultContentLanguageInSubdir can break this assumption. */}} + {{ $content_dir = cond site.IsMultiLingual (cond (ne .Site.LanguagePrefix "") (printf "%s%s" $content_dir .Site.LanguagePrefix) $content_dir) $content_dir }} +{{end}}

- + {{ i18n "edit_page" | default "Edit this page" }}