You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

67 lines
2.2 KiB
XML

{{ $item := . }}
{{ if .IsHome }}
{{ $item = .Site }}
{{ end }}
{{ $pages := slice }}
{{ if or $.IsHome $.IsSection }}
{{ $pages = $item.RegularPages }}
{{ else }}
{{ $pages = $item.Pages }}
{{ end }}
{{ $limit := .Site.Config.Services.RSS.Limit }}
{{ if ge $limit 1 }}
{{ $pages = $pages | first $limit }}
{{ end }}
{{ $pages = where $pages "Params.paige.hide_rss" "ne" true }}
{{ $title := partial "paige/func-title.html" . }}
{{ printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>" | safeHTML }}
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
{{ with .OutputFormats.Get "RSS" }}
{{ printf `<atom:link href="%s" rel="self" type="%s"/>` .Permalink .MediaType | safeHTML }}
{{ end }}
{{ with .Site.Copyright }}
<copyright>{{ . }}</copyright>
{{ end }}
<description>{{ with $title }}{{ . }}{{ else }}Recent content{{ end }}</description>
{{ with .Site.LanguageCode | default .Site.Language.Lang }}
<language>{{ . }}</language>
{{ end }}
{{ if and .Date (not .Date.IsZero) }}
<lastBuildDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>
{{ end }}
<link>{{ .Permalink }}</link>
{{ with .Site.Params.paige.rss.managing_editor }}
<managingEditor>{{ . }}</managingEditor>
{{ end }}
{{ with $title }}
<title>{{ . }}</title>
{{ end }}
{{ with .Site.Params.paige.rss.web_master }}
<webMaster>{{ . }}</webMaster>
{{ end }}
{{ range $pages }}
<item>
{{ with partial "paige/func-authors.html" . }}
<author>{{ . }}</author>
{{ end }}
{{ if .Content }}
<description>{{ printf "<![CDATA[%s]]>" .Content | safeHTML }}</description>
{{ else if .Description }}
<description>{{ .Description | markdownify | html }}</description>
{{ end }}
{{ with .Permalink }}
<guid>{{ . }}</guid>
<link>{{ . }}</link>
{{ end }}
{{ with .Date }}
<pubDate>{{ .Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate>
{{ end }}
{{ with .Title }}
<title>{{ . | markdownify | plainify | htmlUnescape }}</title>
{{ end }}
</item>
{{ end }}
</channel>
</rss>