Merge pull request #127 from Mitrichius/hidden-param/124

Add hidden page param #124
This commit is contained in:
Dmitry Kolosov 2021-12-27 20:20:30 +03:00 committed by GitHub
commit 66e342364f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 60 additions and 15 deletions

View File

@ -20,6 +20,7 @@ Anubis is a simple minimalist theme for [Hugo blog engine](https://gohugo.io/).
- Utteranc.es
- RSS feeds
- Hiding posts from the RSS feed
- Hidden posts (available only by link)
- Translations (en, ru, fr, pl)
- Custom CSS/JS
- Multilingual mode
@ -192,10 +193,13 @@ Based on environment.
For production — allow all, for other — disallow all.
### Favorite posts
To mark posts as favorite just add `favorite: true` in post's front matter. It adds a "★" icon nearby post's title.
Add `favorite: true` to post front matter. It adds a "★" icon nearby post's title.
### Hiding posts from RSS
To hide a post from the RSS feed, just add `disable_feed: true` to its front matter.
Add `disable_feed: true` to post front matter.
### Make post available only by link
Add `hidden: true` to post front matter. Post also is not available in RSS feed.
### Pagination on post single page
Enabled by `paginationSinglePost` param in `params` section of config.

View File

@ -0,0 +1,12 @@
+++
author = "Dmitry Kolosov"
title = "Hidden Post"
date = "2021-12-24"
description = "Post available only by link"
tags = [
"privacy"
]
hidden = true
+++
This is hidden post

View File

@ -0,0 +1,12 @@
+++
author = "Dmitry Kolosov"
title = "Hidden Post"
date = "2021-12-24"
description = "Post available only by link"
tags = [
"privacy"
]
hidden = true
+++
This is hidden post

View File

@ -0,0 +1,12 @@
+++
author = "Dmitry Kolosov"
title = "Hidden Post"
date = "2021-12-24"
description = "Post available only by link"
tags = [
"privacy"
]
hidden = true
+++
This is hidden post

View File

@ -5,11 +5,11 @@
<div class="articles h-feed">
<h1 class="post-title">{{ i18n .Title }}</h1>
{{ $pages := where .Pages "Type" "in" site.Params.mainSections }}
{{ $pages := where (where .Pages "Type" "in" site.Params.mainSections) "Params.hidden" "!=" true}}
{{ range $pages }}
<div class="post-short-list h-entry">
<div class="post-header">
<header>
<header>
<h2 class="p-name post-title{{ if .Params.favorite }} favorite{{end}}{{ if .Params.draft }} draft{{end}}"><a class="u-url" href="{{ .RelPermalink }}">{{ trim .Title " " }}</a></h2>
{{ partial "post-language-switcher.html" . }}
</header>

View File

@ -1,6 +1,6 @@
{{- $pctx := . -}}
{{- if .IsHome -}}{{ $pctx = .Site }}{{- end -}}
{{- $pages := where $pctx.RegularPages ".Params.disable_feed" "!=" true -}}
{{- $pages := where (where $pctx.RegularPages ".Params.disable_feed" "!=" true) "Params.hidden" "!=" true -}}
{{- $limit := .Site.Config.Services.RSS.Limit -}}
{{- if ge $limit 1 -}}
{{- $pages = $pages | first $limit -}}

View File

@ -3,7 +3,8 @@
<div class="post-info">
<a href="{{ (print .Data.Plural "/") | relLangURL }}">{{ i18n (printf "toAll%s" (.Data.Plural | humanize )) | humanize }}</a>
</div>
{{ range .Paginator.Pages }}
{{ $pages := where .Pages "Params.hidden" "!=" true }}
{{ range (.Paginate $pages).Pages }}
{{ partial "post-summary.html" . }}
{{ end }}
{{ partial "pagination.html" . }}

View File

@ -4,15 +4,15 @@
</div>
<h1>{{ i18n .Title }}</h1>
<ul class="terms">
{{ range $key, $value := .Data.Terms }}
<li>
<a href="{{ (print $.Data.Plural "/" (lower $key)) | absLangURL }}">
{{ $key }}
</a>
({{ len $value }})
</li>
{{ range .Data.Terms }}
{{ $postsNum := len (where .Pages "Params.hidden" "!=" true) }}
{{ if gt $postsNum 0 }}
<li>
<a href="{{ .Page.RelPermalink }}">{{ .Page.Title }}</a>
({{ $postsNum }})
</li>
{{ end}}
{{ end }}
</ul>

View File

@ -4,7 +4,7 @@
</div>
<div class="articles h-feed">
{{ $pages := where site.RegularPages "Type" "in" site.Params.mainSections }}
{{ $pages := where (where site.RegularPages "Type" "in" site.Params.mainSections) "Params.hidden" "!=" true }}
{{ range (.Paginate $pages).Pages }}
{{ partial "post-summary.html" . }}
{{ end }}

View File

@ -7,6 +7,10 @@
{{ partial "title.html" . }}
<meta name="description" content="{{ with .Description }}{{ . }}{{ else }}{{if .IsPage}}{{ .Summary }}{{ else }}{{ with .Site.Params.description }}{{ . }}{{ end }}{{ end }}{{ end -}}">
{{ if and (.IsPage) (eq .Params.hidden true)}}
<meta name="robots" content="noindex" />
{{ end }}
{{ with .OutputFormats.Get "rss" -}}
{{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }}
{{ end -}}