From c779a7083471f5f6f7036dfd60e9ff9a321600f9 Mon Sep 17 00:00:00 2001 From: KatieTheDev <51092829+KatieTheDev@users.noreply.github.com> Date: Tue, 19 Nov 2024 01:09:43 -0700 Subject: [PATCH] Add configurable timestamping for posts (#494) * Add configurable timestamping * Add attribution for configurable timestamping * Add new post timestamp options to example hugo.toml * All date formats are now set by single config option in site or page config * Add post timestamp explainer and examples to example config file * Add configurable timestamping value to frontmatter archetype * Explain possible timezone rendering issue with new time formatting * Fix bug concerning time/date tokens * Convert datestamps to work with a partial * Fix issue with lastmod being equal to date * Add Updated prefix functionality --- COMMUNITY-FEATURES.md | 5 +++++ README.md | 14 ++++++++++++++ archetypes/posts.md | 1 + layouts/_default/index.html | 2 +- layouts/_default/list.html | 2 +- layouts/_default/single.html | 6 +++--- layouts/partials/post-date.html | 10 ++++++++++ layouts/partials/post-lastmod.html | 10 ++++++++++ 8 files changed, 45 insertions(+), 5 deletions(-) create mode 100644 layouts/partials/post-date.html create mode 100644 layouts/partials/post-lastmod.html diff --git a/COMMUNITY-FEATURES.md b/COMMUNITY-FEATURES.md index 8b193d5..f20b670 100644 --- a/COMMUNITY-FEATURES.md +++ b/COMMUNITY-FEATURES.md @@ -27,3 +27,8 @@ eg: - **Support for beautiful *KaTeX* formulae** ([amtoine/hugo-theme-terminal-katex](https://github.com/amtoine/hugo-theme-terminal-katex)) - SHORT DESCRIPTION - Antoine Stevan ([@amtoine](https://github.com/amtoine)), software engineer into open source + +- **Configurable timestamping for posts** ([KatieTheDev/hugo-theme-terminal](https://github.com/KatieTheDev/hugo-theme-terminal)) + - Allows for configuring timestamping, not just datestamping + - Works with last modification dates as well + - KatieTheDev ([@KatieTheDev](https://github.com/KatieTheDev)) \ No newline at end of file diff --git a/README.md b/README.md index e3804f1..e794aed 100644 --- a/README.md +++ b/README.md @@ -203,6 +203,20 @@ paginate = 5 # can be overridden in a page's front-matter # TocTitle = "Table of Contents" # default + # Set date/time format for posts + # This will impact the date/time displayed on + # index.html, the posts list page, and on posts themselves + # This value can also be configured per-post on front matter + # If you have any issues with the timezone rendering differently + # than you expected, please ensure your timezone is correctly set + # on your server. + # This value can be customized according to Hugo documentation: + # https://gohugo.io/functions/time/format/ + # Default value (no changes needed): + # dateFormat = "2006-01-02" + # Example format, with date, time, and timezone abbreviation: + # dateFormat = "2006-01-02 3:04:06 PM MST" + [params.twitter] # set Twitter handles for Twitter cards diff --git a/archetypes/posts.md b/archetypes/posts.md index 9cacca3..7064550 100644 --- a/archetypes/posts.md +++ b/archetypes/posts.md @@ -1,6 +1,7 @@ +++ title = "{{ replace .TranslationBaseName "-" " " | title }}" date = "{{ .Date }}" +#dateFormat = "2006-01-02" # This value can be configured for per-post date formatting author = "" authorTwitter = "" #do not include @ cover = "" diff --git a/layouts/_default/index.html b/layouts/_default/index.html index b971adf..06dc5a5 100644 --- a/layouts/_default/index.html +++ b/layouts/_default/index.html @@ -23,7 +23,7 @@
{{- if .Date -}} {{- end -}} {{- with .Params.Author -}} diff --git a/layouts/_default/list.html b/layouts/_default/list.html index 791efce..7ff9350 100644 --- a/layouts/_default/list.html +++ b/layouts/_default/list.html @@ -13,7 +13,7 @@
{{- if .Date -}} {{- end -}} {{- with .Params.Author -}} diff --git a/layouts/_default/single.html b/layouts/_default/single.html index 43a4102..88826a4 100644 --- a/layouts/_default/single.html +++ b/layouts/_default/single.html @@ -6,9 +6,9 @@