From 5341773f4831960706446569675449217937aa6a Mon Sep 17 00:00:00 2001 From: Serghei Iakovlev Date: Sun, 29 May 2022 10:40:02 +0200 Subject: Provide ability to get list of all posts --- CHANGELOG.md | 1 + content/all-posts.md | 4 ++++ i18n/en.toml | 3 +++ i18n/ru.toml | 7 +++++-- layouts/page/all-posts.html | 22 ++++++++++++++++++++++ layouts/partials/mini-toc.html | 19 ++++++++++++++----- 6 files changed, 49 insertions(+), 7 deletions(-) create mode 100644 content/all-posts.md create mode 100644 layouts/page/all-posts.html diff --git a/CHANGELOG.md b/CHANGELOG.md index 905aad2..6859e89 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Add `{{< mini-toc >}}` shortcode - Provide an ability to use `keywords` meta tag - Provide ability to render feeds menu +- Provide ability to get list of all posts any kind of content ### Changed diff --git a/content/all-posts.md b/content/all-posts.md new file mode 100644 index 0000000..7505929 --- /dev/null +++ b/content/all-posts.md @@ -0,0 +1,4 @@ +--- +title: All posts +layout: all-posts +--- diff --git a/i18n/en.toml b/i18n/en.toml index f1a413f..bc92d51 100644 --- a/i18n/en.toml +++ b/i18n/en.toml @@ -39,3 +39,6 @@ [send] other = 'Send' + +[all_publications] + other = 'All publications' diff --git a/i18n/ru.toml b/i18n/ru.toml index a2db4b2..2598df1 100644 --- a/i18n/ru.toml +++ b/i18n/ru.toml @@ -5,7 +5,7 @@ other = 'Вернуться наверх' [more] - other = 'Далее...' + other = 'Читать далее...' [updated_at] other = 'Обновлено' @@ -17,7 +17,7 @@ other = 'Ваше имя' [email_addres] - other = 'Email' + other = 'Обратный адрес' [message] other = 'Сообщение' @@ -39,3 +39,6 @@ [send] other = 'Отправить' + +[all_publications] + other = 'Все публикации' diff --git a/layouts/page/all-posts.html b/layouts/page/all-posts.html new file mode 100644 index 0000000..a26b084 --- /dev/null +++ b/layouts/page/all-posts.html @@ -0,0 +1,22 @@ +{{ define "main" }} +{{/* Define a section to pull recent posts from. + This will default to the section with the most number of pages. */}} +{{ $mainSections := site.Params.mainSections | default (slice "posts") }} + +{{/* Create a variable with that section to use in multiple places. */}} +{{ $section := where site.RegularPages.ByDate.Reverse "Section" "in" $mainSections }} + +
+ {{ with .Title }}

{{ . }}

{{ end }} + + {{ with .Content }} +
+ {{ .Content }} +
+ {{ end }} + + {{ range $section }} + {{ .Render "teaser" }} + {{ end }} +
+{{ end }} diff --git a/layouts/partials/mini-toc.html b/layouts/partials/mini-toc.html index 629169b..6b52f47 100644 --- a/layouts/partials/mini-toc.html +++ b/layouts/partials/mini-toc.html @@ -1,25 +1,34 @@ {{/* Define a section to pull recent posts from. This will default to the section with the most number of pages. */}} -{{ $mainSections := site.Params.mainSections | default (slice "post") }} +{{ $mainSections := site.Params.mainSections | default (slice "posts") }} {{/* Create a variable with that section to use in multiple places. */}} -{{ $section := where site.RegularPages "Section" "in" $mainSections }} +{{ $section := where site.RegularPages.ByDate.Reverse "Section" "in" $mainSections }} {{/* Check to see if the section is defined for ranging through it */}} {{ $sectionCount := len $section }} {{ if ge $sectionCount 1 }} - {{ $mxPosts := site.Params.recentPostsSize | default 5 }} + {{ $maxPosts := site.Params.recentPostsSize | default 5 }} {{ end }} -- cgit v1.2.3