hugo/docs/content/templates/sitemap.md
Anthony Fok b3bd71fec9 Update Hugo docs with the initialisms suggested by golint
In particular:

 * .Url → .URL (for node, menu and paginator)
 * .Site.BaseUrl → .Site.BaseURL
 * getJson → getJSON
 * getCsv → getCSV
 * safeHtml → safeHTML
 * safeCss → safeCSS
 * safeUrl → safeURL

Continued effort in fixing #959.
2015-03-18 11:30:37 +01:00

1.6 KiB
Raw Blame History

aliases date linktitle menu next notoc prev title weight
/layout/sitemap/
2014-05-07 Sitemap
main
parent
layout
/templates/404 true /templates/rss Sitemap Template 95

A single Sitemap template is used to generate the sitemap.xml file. Hugo automatically comes with this template file. No work is needed on the users' part unless they want to customize sitemap.xml.

This page is of the type "node" and have all the node variables available to use in this template along with Sitemap-specific ones:

.Sitemap.ChangeFreq The page change frequency
.Sitemap.Priority The priority of the page

In addition to the standard node variables, the homepage has access to all site pages through .Data.Pages.

If provided, Hugo will use /layouts/sitemap.xml instead of the internal one.

Hugos sitemap.xml

This template respects the version 0.9 of the Sitemap Protocol.

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  {{ range .Data.Pages }}
  <url>
    <loc>{{ .Permalink }}</loc>
    <lastmod>{{ safeHTML ( .Date.Format "2006-01-02T15:04:05-07:00" ) }}</lastmod>{{ with .Sitemap.ChangeFreq }}
    <changefreq>{{ . }}</changefreq>{{ end }}{{ if ge .Sitemap.Priority 0.0 }}
    <priority>{{ .Sitemap.Priority }}</priority>{{ end }}
  </url>
  {{ end }}
</urlset>

Important: Hugo will automatically add the following header line to this file on render. Please don't include this in the template as it's not valid HTML.

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>