diff options
| -rw-r--r-- | exampleSite/config.toml | 10 | ||||
| -rw-r--r-- | layouts/_default/home.humanstxt.txt (renamed from layouts/index.humanstxt.txt) | 0 | ||||
| -rw-r--r-- | layouts/_default/list.atom.xml | 7 | ||||
| -rw-r--r-- | layouts/_default/list.feed.xml | 5 | ||||
| -rw-r--r-- | layouts/partials/alternate-outputs.html | 6 | ||||
| -rw-r--r-- | layouts/partials/head.html | 8 | ||||
| -rw-r--r-- | layouts/robots.txt | 3 |
7 files changed, 26 insertions, 13 deletions
diff --git a/exampleSite/config.toml b/exampleSite/config.toml index 94e1200..648261e 100644 --- a/exampleSite/config.toml +++ b/exampleSite/config.toml @@ -7,7 +7,7 @@ theme = ['github.com/sergeyklay/gohugo-theme-ed'] resourceDir = '../resources' enableRobotsTXT = true -# kick out RSS, we'll use Atom +# kick out RSS, we'll use Atom and FEED bellow disableKinds = ['RSS'] [minify] @@ -17,7 +17,6 @@ disableKinds = ['RSS'] [outputs] home = [ 'HTML', 'Atom', 'FEED', 'JSON', 'MANIFEST', 'humanstxt' ] section = [ 'HTML', 'Atom', 'FEED', 'JSON' ] - # TODO: SITEMAP page = [ 'HTML' ] taxonomy = [ 'HTML' ] term = [ 'HTML' ] @@ -87,6 +86,7 @@ disableKinds = ['RSS'] isHTML = false noUgly = true permalinkable = false + notAlternative = true [mediaTypes] [mediaTypes.'text/xml'] @@ -96,6 +96,12 @@ disableKinds = ['RSS'] [mediaTypes.'application/manifest+json'] suffixes = ['webmanifest'] +# Sitemap config +[sitemap] + changefreq = 'weekly' + filename = 'sitemap.xml' + priority = 0.5 + [author] name = 'John Doe' email = 'john@example.com' diff --git a/layouts/index.humanstxt.txt b/layouts/_default/home.humanstxt.txt index 4b11034..4b11034 100644 --- a/layouts/index.humanstxt.txt +++ b/layouts/_default/home.humanstxt.txt diff --git a/layouts/_default/list.atom.xml b/layouts/_default/list.atom.xml index 5629534..452b3bf 100644 --- a/layouts/_default/list.atom.xml +++ b/layouts/_default/list.atom.xml @@ -14,14 +14,17 @@ {{- $pages = $pages | first $limit -}} {{- safeHTML "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\" ?>" }} -<feed xmlns="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" xml:lang="{{ site.LanguageCode }}"> +<feed xmlns="http://www.w3.org/2005/Atom" + xmlns:media="http://search.yahoo.com/mrss/" + xml:lang="{{ site.LanguageCode }}" + xml:base="{{ site.BaseURL }}"> {{ printf `<title type="html"><![CDATA[%s]]></title>` (partial "title.html" .) | safeHTML }} {{ with site.Params.description }}{{ printf `<subtitle type="html"><![CDATA[%s]]></subtitle>` . | safeHTML }}{{ end }} {{- $output_formats := .OutputFormats }} {{- range $output_formats -}} {{- $rel := (or (and (eq "atom" (.Name | lower)) "self") "alternate") -}} {{- with $output_formats.Get .Name }} - {{ printf `<link href=%q rel=%q type=%q title=%q />` .Permalink $rel .MediaType.Type .Name | safeHTML }} + {{ printf `<link href=%q rel=%q type=%q title=%q />` .RelPermalink $rel .MediaType.Type .Name | safeHTML }} {{- end -}} {{- end }} {{ $logo := resources.Get (site.Params.assets.logo | default "/img/open-graph-logo.png") }}{{ $logo = $logo.Resize "96x96" }}<icon>{{ $logo.Permalink | absURL }}</icon> diff --git a/layouts/_default/list.feed.xml b/layouts/_default/list.feed.xml index 8a80edf..0a37e09 100644 --- a/layouts/_default/list.feed.xml +++ b/layouts/_default/list.feed.xml @@ -22,7 +22,8 @@ xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:media="http://search.yahoo.com/mrss/" - xml:lang="{{ site.LanguageCode }}"> + xml:lang="{{ site.LanguageCode }}" + xml:base="{{ site.BaseURL }}"> <channel> {{ printf `<title type="html"><![CDATA[%s]]></title>` (partial "title.html" .) | safeHTML }} </channel> @@ -39,7 +40,7 @@ {{- range $output_formats -}} {{- $rel := (or (and (eq "feed" (.Name | lower)) "self") "alternate") -}} {{- with $output_formats.Get .Name }} - {{ printf `<atom:link href=%q rel=%q type=%q title=%q />` .Permalink $rel .MediaType.Type .Name | safeHTML }} + {{ printf `<atom:link href=%q rel=%q type=%q title=%q />` .RelPermalink $rel .MediaType.Type .Name | safeHTML }} {{- end -}} {{- end }} {{ with site.Params.description }}{{ printf `<description type="html"><![CDATA[%s]]></description>` . | safeHTML }}{{ end }} diff --git a/layouts/partials/alternate-outputs.html b/layouts/partials/alternate-outputs.html new file mode 100644 index 0000000..52bdd0d --- /dev/null +++ b/layouts/partials/alternate-outputs.html @@ -0,0 +1,6 @@ +{{- range .AlternativeOutputFormats }} + <link rel="{{ .Rel }}" type="{{ .MediaType.Type | html }}" href="{{ .RelPermalink | safeURL }}" title="{{ .Name }}"> +{{- end }} + <link rel="manifest" type="application/manifest+json" href="{{ "manifest.webmanifest" | relURL }}" title="Manifest"> + <link rel="sitemap" type="application/xml" href="{{ "sitemap.xml" | relURL }}" title="Sitemap"> + <link rel="author" type="text/plain" href="{{ "humans.txt" | relURL }}" title="Humans"> diff --git a/layouts/partials/head.html b/layouts/partials/head.html index 3ef34e2..81dd2d0 100644 --- a/layouts/partials/head.html +++ b/layouts/partials/head.html @@ -17,12 +17,10 @@ <link rel="icon" href="{{ site.Params.assets.favicon | default "favicon.ico" | relURL }}" sizes="any"><!-- 32×32 --> <link rel="icon" href="{{ site.Params.assets.svgicon | default "icon.svg" | relURL }}" type="image/svg+xml"> <link rel="apple-touch-icon" href="{{ site.Params.assets.apple_touch_icon | default "apple-touch-icon.png" | relURL }}"><!-- 180×180 --> - <link rel="manifest" href="{{ "manifest.webmanifest" | relURL }}"> - {{- /* RSS */}} - {{ range .AlternativeOutputFormats }} - <link rel="{{ .Rel }}" type="{{ .MediaType.Type | html }}" title="{{ $.Site.Title }}" href="{{ .Permalink | safeURL }}"> - {{- end -}} + {{- /* Feed, sitemap and manifest */}} + {{ partial "alternate-outputs.html" . }} + {{- range .AllTranslations -}} <link rel="alternate" hreflang="{{ .Lang }}" href="{{ .Permalink }}"> {{ end -}} diff --git a/layouts/robots.txt b/layouts/robots.txt index c59438e..c07f0df 100644 --- a/layouts/robots.txt +++ b/layouts/robots.txt @@ -4,8 +4,7 @@ User-agent: * {{- if eq (getenv "HUGO_ENV") "production" | or (eq site.Params.env "production") }} Allow: / -# TODO: implement sitemap.xml -# Sitemap: {{ "stemap.xml" | absURL }} +Sitemap: {{ "/stemap.xml" | absURL }} {{- else }} Disallow: / {{- end }} |
