From 90d3fbf1da93a279cfe994a226ae82cf5441deab Mon Sep 17 00:00:00 2001 From: Jack Taylor Date: Sun, 23 Apr 2017 05:37:14 +0900 Subject: [PATCH] tplimpl: Add translation links to the default sitemap template For pages with translations, add links with hreflang attributes to the default sitemap template. This helps Google to show the correct language page in its search results. The syntax used is based on Google's example at [1]. Also update the sitemap template docs to reflect the changes in the default template. [1] https://support.google.com/webmasters/answer/2620865?hl=en&topic=2370587&ctx=topic Fixes #2569 --- docs/content/templates/sitemap.md | 21 +++++++++++++++++---- tpl/tplimpl/template_embedded.go | 15 +++++++++++++-- 2 files changed, 30 insertions(+), 6 deletions(-) diff --git a/docs/content/templates/sitemap.md b/docs/content/templates/sitemap.md index 1ecbfb3be..c893f3155 100644 --- a/docs/content/templates/sitemap.md +++ b/docs/content/templates/sitemap.md @@ -31,16 +31,29 @@ one. ## Hugo’s sitemap.xml -This template respects the version 0.9 of the [Sitemap -Protocol](http://www.sitemaps.org/protocol.html). +This template uses the version 0.9 of the [Sitemap +Protocol](http://www.sitemaps.org/protocol.html) with Google's [hreflang +attributes](https://support.google.com/webmasters/answer/2620865?hl=en&topic=2370587&ctx=topic) +for linking to translated content. - + {{ range .Data.Pages }} {{ .Permalink }}{{ if not .Lastmod.IsZero }} {{ safeHTML ( .Lastmod.Format "2006-01-02T15:04:05-07:00" ) }}{{ end }}{{ with .Sitemap.ChangeFreq }} {{ . }}{{ end }}{{ if ge .Sitemap.Priority 0.0 }} - {{ .Sitemap.Priority }}{{ end }} + {{ .Sitemap.Priority }}{{ end }}{{ if .IsTranslated }}{{ range .Translations }} + {{ end }} + {{ end }} {{ end }} diff --git a/tpl/tplimpl/template_embedded.go b/tpl/tplimpl/template_embedded.go index 2d4769f78..c02e6569a 100644 --- a/tpl/tplimpl/template_embedded.go +++ b/tpl/tplimpl/template_embedded.go @@ -87,13 +87,24 @@ func (t *templateHandler) embedTemplates() { `) - t.addInternalTemplate("_default", "sitemap.xml", ` + t.addInternalTemplate("_default", "sitemap.xml", ` {{ range .Data.Pages }} {{ .Permalink }}{{ if not .Lastmod.IsZero }} {{ safeHTML ( .Lastmod.Format "2006-01-02T15:04:05-07:00" ) }}{{ end }}{{ with .Sitemap.ChangeFreq }} {{ . }}{{ end }}{{ if ge .Sitemap.Priority 0.0 }} - {{ .Sitemap.Priority }}{{ end }} + {{ .Sitemap.Priority }}{{ end }}{{ if .IsTranslated }}{{ range .Translations }} + {{ end }} + {{ end }} {{ end }} `)