diff options
author | SatowTakeshi <doublequotation@gmail.com> | 2020-11-22 02:58:26 +0900 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2020-11-21 23:37:58 +0100 |
commit | e4fcb672ed8bae21fd9780292b54fea3040dd877 (patch) | |
tree | 7d95e9f5d7bcc050a8242f7893f39cd86b1bb914 /resources/page/page_paths.go | |
parent | 18c13adcd46bdff963311fdba9eaa9b5a299106e (diff) |
resources: Preserve url set in frontmatter without sanitizing
related #6007 (already closed)
Diffstat (limited to 'resources/page/page_paths.go')
-rw-r--r-- | resources/page/page_paths.go | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/resources/page/page_paths.go b/resources/page/page_paths.go index 247c4dfcb..6ef9bced6 100644 --- a/resources/page/page_paths.go +++ b/resources/page/page_paths.go @@ -308,12 +308,16 @@ func CreateTargetPaths(d TargetPathDescriptor) (tp TargetPaths) { linkDir = strings.TrimSuffix(path.Join(slash, linkDir), slash) - // Note: MakePathSanitized will lower case the path if - // disablePathToLower isn't set. - pagePath = d.PathSpec.MakePathSanitized(pagePath) - pagePathDir = d.PathSpec.MakePathSanitized(pagePathDir) - link = d.PathSpec.MakePathSanitized(link) - linkDir = d.PathSpec.MakePathSanitized(linkDir) + // if page URL is explicitly set in frontmatter, + // preserve its value without sanitization + if d.Kind != KindPage || d.URL == "" { + // Note: MakePathSanitized will lower case the path if + // disablePathToLower isn't set. + pagePath = d.PathSpec.MakePathSanitized(pagePath) + pagePathDir = d.PathSpec.MakePathSanitized(pagePathDir) + link = d.PathSpec.MakePathSanitized(link) + linkDir = d.PathSpec.MakePathSanitized(linkDir) + } tp.TargetFilename = filepath.FromSlash(pagePath) tp.SubResourceBaseTarget = filepath.FromSlash(pagePathDir) |