2014-05-27 18:32:57 -04:00
|
|
|
|
---
|
2014-05-29 18:42:05 -04:00
|
|
|
|
aliases:
|
|
|
|
|
- /layout/rss/
|
|
|
|
|
date: 2013-07-01
|
|
|
|
|
linktitle: RSS
|
2014-05-27 18:32:57 -04:00
|
|
|
|
menu:
|
|
|
|
|
main:
|
2014-05-29 18:42:05 -04:00
|
|
|
|
parent: layout
|
|
|
|
|
next: /templates/sitemap
|
|
|
|
|
notoc: one
|
|
|
|
|
prev: /templates/partials
|
|
|
|
|
title: RSS (feed) Templates
|
|
|
|
|
weight: 90
|
2014-05-27 18:32:57 -04:00
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
Like all other templates, you can use a single RSS template to generate
|
2014-09-03 00:12:26 -04:00
|
|
|
|
all of your RSS feeds, or you can create a specific template for each
|
2015-01-12 16:12:08 -05:00
|
|
|
|
individual feed. Unlike other templates, *Hugo ships with its own
|
|
|
|
|
[RSS 2.0 template](#the-embedded-rss-xml:eceb479b7b3b2077408a2878a29e1320).
|
|
|
|
|
In most cases this will be sufficient, and an RSS
|
2014-05-27 18:32:57 -04:00
|
|
|
|
template will not need to be provided by the user.*
|
|
|
|
|
|
|
|
|
|
RSS pages are of the type "node" and have all the [node
|
|
|
|
|
variables](/layout/variables/) available to use in the templates.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Which Template will be rendered?
|
|
|
|
|
Hugo uses a set of rules to figure out which template to use when
|
|
|
|
|
rendering a specific page.
|
|
|
|
|
|
2014-09-03 00:12:26 -04:00
|
|
|
|
Hugo will use the following prioritized list. If a file isn’t present,
|
|
|
|
|
then the next one in the list will be used. This enables you to craft
|
2014-05-27 18:32:57 -04:00
|
|
|
|
specific layouts when you want to without creating more templates
|
2014-09-03 00:12:26 -04:00
|
|
|
|
than necessary. For most sites only the \_default file at the end of
|
2014-05-27 18:32:57 -04:00
|
|
|
|
the list will be needed.
|
|
|
|
|
|
|
|
|
|
### Main RSS
|
|
|
|
|
|
|
|
|
|
* /layouts/rss.xml
|
|
|
|
|
* /layouts/\_default/rss.xml
|
|
|
|
|
* \__internal/rss.xml
|
|
|
|
|
|
|
|
|
|
### Section RSS
|
|
|
|
|
|
|
|
|
|
* /layouts/section/`SECTION`.rss.xml
|
|
|
|
|
* /layouts/\_default/rss.xml
|
|
|
|
|
* /themes/`THEME`/layouts/section/`SECTION`.rss.xml
|
|
|
|
|
* /themes/`THEME`/layouts/\_default/rss.xml
|
|
|
|
|
* \__internal/rss.xml
|
|
|
|
|
|
|
|
|
|
### Taxonomy RSS
|
|
|
|
|
|
|
|
|
|
* /layouts/taxonomy/`SINGULAR`.rss.xml
|
|
|
|
|
* /layouts/\_default/rss.xml
|
|
|
|
|
* /themes/`THEME`/layouts/taxonomy/`SINGULAR`.rss.xml
|
|
|
|
|
* /themes/`THEME`/layouts/\_default/rss.xml
|
|
|
|
|
* \__internal/rss.xml
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Configuring RSS
|
|
|
|
|
|
2014-09-03 00:12:26 -04:00
|
|
|
|
If the following are provided in the site’s config file, then they
|
2014-05-27 18:32:57 -04:00
|
|
|
|
will be included in the RSS output. Example values are provided.
|
|
|
|
|
|
|
|
|
|
languageCode = "en-us"
|
|
|
|
|
copyright = "This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License."
|
|
|
|
|
|
|
|
|
|
[author]
|
|
|
|
|
name = "My Name Here"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## The Embedded rss.xml
|
|
|
|
|
This is the RSS template that ships with Hugo. It adheres to the
|
2015-01-12 16:12:08 -05:00
|
|
|
|
[RSS 2.0 Specification][RSS 2.0].
|
2014-05-27 18:32:57 -04:00
|
|
|
|
|
|
|
|
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
|
|
|
|
|
<channel>
|
2015-03-28 05:41:44 -04:00
|
|
|
|
<title>{{ with .Title }}{{.}} on {{ end }}{{ .Site.Title }}</title>
|
2014-05-27 18:32:57 -04:00
|
|
|
|
<link>{{ .Permalink }}</link>
|
2015-03-28 05:41:44 -04:00
|
|
|
|
<description>Recent content {{ with .Title }}in {{.}} {{ end }}on {{ .Site.Title }}</description>
|
|
|
|
|
<generator>Hugo -- gohugo.io</generator>{{ with .Site.LanguageCode }}
|
|
|
|
|
<language>{{.}}</language>{{end}}{{ with .Site.Author.email }}
|
|
|
|
|
<managingEditor>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</managingEditor>{{end}}{{ with .Site.Author.email }}
|
|
|
|
|
<webMaster>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</webMaster>{{end}}{{ with .Site.Copyright }}
|
|
|
|
|
<copyright>{{.}}</copyright>{{end}}{{ if not .Date.IsZero }}
|
|
|
|
|
<lastBuildDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>{{ end }}
|
|
|
|
|
<atom:link href="{{.URL}}" rel="self" type="application/rss+xml" />
|
2014-05-27 18:32:57 -04:00
|
|
|
|
{{ range first 15 .Data.Pages }}
|
|
|
|
|
<item>
|
|
|
|
|
<title>{{ .Title }}</title>
|
|
|
|
|
<link>{{ .Permalink }}</link>
|
2015-03-28 05:41:44 -04:00
|
|
|
|
<pubDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate>
|
|
|
|
|
{{ with .Site.Author.email }}<author>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</author>{{end}}
|
2014-05-27 18:32:57 -04:00
|
|
|
|
<guid>{{ .Permalink }}</guid>
|
|
|
|
|
<description>{{ .Content | html }}</description>
|
|
|
|
|
</item>
|
|
|
|
|
{{ end }}
|
|
|
|
|
</channel>
|
|
|
|
|
</rss>
|
|
|
|
|
|
|
|
|
|
*Important: Hugo will automatically add the following header line to this file
|
2014-09-03 00:12:26 -04:00
|
|
|
|
on render… please don't include this in the template as it's not valid HTML.*
|
2014-05-27 18:32:57 -04:00
|
|
|
|
|
|
|
|
|
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
|
2015-01-12 16:12:08 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[RSS 2.0]: http://cyber.law.harvard.edu/rss/rss.html "RSS 2.0 Specification"
|