diff options
| author | Nantha Sorubakanthan <nantha@mielota.com> | 2025-11-11 10:23:38 +0100 |
|---|---|---|
| committer | Nantha Sorubakanthan <nantha@mielota.com> | 2025-11-11 10:23:53 +0100 |
| commit | eb36804cec95135f72ca47f8d2bfb29416501082 (patch) | |
| tree | 926e187e4bad70b1f0f4f088038aa650a9acd711 /layouts/index.xml | |
| parent | 205435c112a28465f85ba279e71de4fac63d7c3b (diff) | |
update rss layout
took rss from zacoons/zacoons.com on codeberg
Diffstat (limited to 'layouts/index.xml')
| -rw-r--r-- | layouts/index.xml | 70 |
1 files changed, 41 insertions, 29 deletions
diff --git a/layouts/index.xml b/layouts/index.xml index db5dd5c..0310854 100644 --- a/layouts/index.xml +++ b/layouts/index.xml @@ -1,33 +1,45 @@ -{{- $authorEmail := .Site.Params.email }} -{{- $authorName := .Site.Params.name }} +{{- $authorName := site.Params.author.email }} +{{- $authorEmail := site.Params.author.name }} + {{- $pctx := . }} {{- if .IsHome }}{{ $pctx = .Site }}{{ end }} -{{- $pages := where .Site.RegularPages "Params.index" true }} -{{- printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>" | safeHTML }} +{{- $pages := slice }} +{{- if or $.IsHome $.IsSection }} +{{- $pages = where $pctx.RegularPages "Section" "blog" }} +{{- else }} +{{- $pages = where $pctx.Pages "Section" "blog" }} +{{- end }} +{{- $limit := .Site.Config.Services.RSS.Limit }} +{{- if ge $limit 1 }} +{{- $pages = $pages | first $limit }} +{{- end }} +{{- printf "<?xml version= \"1.0\" encoding= \"utf-8\" standalone= \"yes\"?>" | safeHTML }} <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> - <channel> - <title>{{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{ . }} on {{ end }}{{ .Site.Title }}{{ end }}</title> - <link>{{ .Permalink }}</link> - <description>{{ .Site.Title }}</description> - <author>{{ $authorEmail }} ({{ $authorName }})</author> - <generator>Hugo</generator> - <language>{{ site.Language.LanguageCode }}</language>{{ with $authorEmail }} - <managingEditor>{{.}}{{ with $authorName }} ({{ . }}){{ end }}</managingEditor>{{ end }}{{ with $authorEmail }} - <webMaster>{{ . }}{{ with $authorName }} ({{ . }}){{ end }}</webMaster>{{ end }} - {{- with .OutputFormats.Get "RSS" }} - {{ printf "<atom:link href=%q rel=\"self\" type=%q />" .Permalink .MediaType | safeHTML }} - {{- end }} - {{- range $pages }} - <item> - <title>{{ .Title }}</title>{{ $title := .Title }} - <link>{{ .Permalink }}</link> - <pubDate>{{ .PublishDate.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate> - {{- with $authorEmail }}<author>{{ . }}{{ with $authorName }} ({{ . }}){{ end }}</author>{{ end }} - <guid>{{ .Permalink }}</guid> - {{- $emailprompt := "" }} - {{- with .Site.Params.links.email }}{{ $emailprompt = printf "<a href=\"%s?subject=RE: %s\">← Reply-To</a>" . $title }}{{ end }} - <description>{{ ((printf "%s%s" .Content $emailprompt) | transform.XMLEscape) | safeHTML }}</description> - </item> - {{- end }} - </channel> + <channel> + <title>{{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{ . }} on {{ + end }}{{ .Site.Title }}{{ end }}</title> + <link>{{ .Permalink }}</link> + <description>Recent content + {{ if ne .Title .Site.Title }}{{ with .Title }}in {{ . }} {{ end }}{{ end }}on {{ .Site.Title }}</description> + <generator> + Hugo</generator> + <language>{{ site.Language.LanguageCode }}</language>{{ with $authorEmail }} <managingEditor>{{.}}{{ + with $authorName }} ({{ . }}){{ end }}</managingEditor>{{ end }}{{ with $authorEmail }} <webMaster>{{ + . }}{{ with $authorName }} ({{ . }}){{ end }}</webMaster>{{ end }}{{ with .Site.Copyright }} <copyright>{{ + . }}</copyright>{{ end }}{{ if not .Date.IsZero }} <lastBuildDate>{{ (index + $pages.ByLastmod.Reverse 0).Lastmod.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>{{ + end }} {{- with .OutputFormats.Get "RSS" }} {{ printf "<atom:link href= %q rel= \"self\" type= %q />" + .Permalink .MediaType | safeHTML }} {{- end }} {{- range $pages }} <item> + <title>{{ .Title }}</title> + <link>{{ .Permalink }}</link> + <pubDate> + {{ .PublishDate.Format "Mon,02 Jan 2006 15:04:05 -0700" | safeHTML }} + </pubDate> {{- + with $authorEmail }}<author>{{ . + }}{{ + with $authorName }} ({{ . }}){{ end }}</author>{{ end }} <guid>{{ .Permalink }}</guid> + <description>{{ + .Content | transform.XMLEscape | safeHTML }}</description> + </item> {{- end }} </channel> </rss> + |
