From 585371a1907fb82155cb6dc898abf3e38e7034cc Mon Sep 17 00:00:00 2001 From: Kevin Jerebica Date: Tue, 26 Mar 2024 23:04:57 +0100 Subject: [PATCH] Fix RSS feed --- themes/minth/hugo.toml | 14 ++++-- themes/minth/layouts/_default/rss.xml | 71 +++++++++++++++++++++++++++ 2 files changed, 82 insertions(+), 3 deletions(-) create mode 100644 themes/minth/layouts/_default/rss.xml diff --git a/themes/minth/hugo.toml b/themes/minth/hugo.toml index 8ddf42f..557aac2 100644 --- a/themes/minth/hugo.toml +++ b/themes/minth/hugo.toml @@ -8,17 +8,25 @@ pageRef = '/' weight = 10 [[menus.main]] -name = 'Tags' -pageRef = '/tags' -weight = 30 +name = 'RSS' +url = '/index.xml' +weight = 20 [[menus.main]] name = 'About' pageRef = '/pages/about-me' +weight = 25 [[menus.main]] name = 'Resources' pageRef = '/pages/resources' +weight = 30 + +[[menus.main]] +name = 'Tags' +pageRef = '/tags' +weight = 35 + [module] [module.hugoVersion] diff --git a/themes/minth/layouts/_default/rss.xml b/themes/minth/layouts/_default/rss.xml new file mode 100644 index 0000000..c6bc90b --- /dev/null +++ b/themes/minth/layouts/_default/rss.xml @@ -0,0 +1,71 @@ +{{- /* Deprecate site.Author.email in favor of site.Params.author.email */}} +{{- $authorEmail := "" }} +{{- with site.Params.author }} + {{- if reflect.IsMap . }} + {{- with .email }} + {{- $authorEmail = . }} + {{- end }} + {{- end }} +{{- else }} + {{- with site.Author.email }} + {{- $authorEmail = . }} + {{- warnf "The author key in site configuration is deprecated. Use params.author.email instead." }} + {{- end }} +{{- end }} + +{{- /* Deprecate site.Author.name in favor of site.Params.author.name */}} +{{- $authorName := "" }} +{{- with site.Params.author }} + {{- if reflect.IsMap . }} + {{- with .name }} + {{- $authorName = . }} + {{- end }} + {{- else }} + {{- $authorName = . }} + {{- end }} +{{- else }} + {{- with site.Author.name }} + {{- $authorName = . }} + {{- warnf "The author key in site configuration is deprecated. Use params.author.name instead." }} + {{- end }} +{{- end }} + +{{- $pctx := . }} +{{- if .IsHome }}{{ $pctx = .Site }}{{ end }} +{{- $pages := slice }} +{{- if or $.IsHome $.IsSection }} +{{- $pages = $pctx.RegularPages }} +{{- else }} +{{- $pages = $pctx.Pages }} +{{- end }} +{{- $limit := .Site.Config.Services.RSS.Limit }} +{{- if ge $limit 1 }} +{{- $pages = $pages | first $limit }} +{{- end }} +{{- printf "" | safeHTML }} + + + {{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{ . }} on {{ end }}{{ .Site.Title }}{{ end }} + {{ .Permalink }} + Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{ . }} {{ end }}{{ end }}on {{ .Site.Title }} + Hugo -- gohugo.io + {{ site.Language.LanguageCode }}{{ with $authorEmail }} + {{.}}{{ with $authorName }} ({{ . }}){{ end }}{{ end }}{{ with $authorEmail }} + {{ . }}{{ with $authorName }} ({{ . }}){{ end }}{{ end }}{{ with .Site.Copyright }} + {{ . }}{{ end }}{{ if not .Date.IsZero }} + {{ (index $pages.ByLastmod.Reverse 0).Lastmod.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}{{ end }} + {{- with .OutputFormats.Get "RSS" }} + {{ printf "" .Permalink .MediaType | safeHTML }} + {{- end }} + {{- range $pages }} + + {{ .Title }} + {{ .Permalink }} + {{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }} + {{- with $authorEmail }}{{ . }}{{ with $authorName }} ({{ . }}){{ end }}{{ end }} + {{ .Permalink }} + {{ .Content | transform.XMLEscape | safeHTML }} + + {{- end }} + +