Sitemap templates
Overview
Hugo’s embedded sitemap templates conform to v0.9 of the sitemap protocol.
With a monolingual project, Hugo generates a sitemap.xml file in the root of the publishDir
using the embedded sitemap template.
With a multilingual project, Hugo generates:
- A sitemap.xml file in the root of each site (language) using the embedded sitemap template
- A sitemap.xml file in the root of the
publishDir
using the embedded sitemapindex template
Configuration
Set the default values for change frequency and priority, and the name of the generated file, in your site configuration.
sitemap:
changeFreq: ""
filename: sitemap.xml
priority: -1
[sitemap]
changeFreq = ''
filename = 'sitemap.xml'
priority = -1
{
"sitemap": {
"changeFreq": "",
"filename": "sitemap.xml",
"priority": -1
}
}
- changefreq
- How frequently a page is likely to change. Valid values are
always
,hourly
,daily
,weekly
,monthly
,yearly
, andnever
. Default is""
(change frequency omitted from rendered sitemap). - filename
- The name of the generated file. Default is
sitemap.xml
. - priority
- The priority of a page relative to any other page on the site. Valid values range from 0.0 to 1.0. Default is
-1
(priority omitted from rendered sitemap).
Override default values
Override the default values for a given page in front matter.
---
sitemap:
changefreq: weekly
priority: 0.8
title: News
---
+++
title = 'News'
[sitemap]
changefreq = 'weekly'
priority = 0.8
+++
{
"sitemap": {
"changefreq": "weekly",
"priority": 0.8
},
"title": "News"
}
Override built-in templates
To override the built-in sitemap.xml template, create a new file in either of these locations:
- layouts/sitemap.xml
- layouts/_default/sitemap.xml
When ranging through the page collection, access the change frequency and priority with .Sitemap.ChangeFreq
and .Sitemap.Priority
respectively.
To override the built-in sitemapindex.xml template, create a new file in either of these locations:
- layouts/sitemapindex.xml
- layouts/_default/sitemapindex.xml
Disable sitemap generation
You may disable sitemap generation in your site configuration:
disableKinds:
- sitemap
disableKinds = ['sitemap']
{
"disableKinds": [
"sitemap"
]
}