✨ feat: allow dual date-format (short/long)
This commit is contained in:
parent
e93b33e6b8
commit
9887fb0a6f
@ -16,8 +16,13 @@ highlight_code = true
|
|||||||
highlight_theme = "css"
|
highlight_theme = "css"
|
||||||
|
|
||||||
[extra]
|
[extra]
|
||||||
# If unset, uses format: "6 July 2049" ("%d %B %Y"). Don't leave it empty or dates won't appear. Either use a proper format or comment out the line.
|
# Date format used when listing posts (main page, /blog section, tag posts list…)
|
||||||
# date_format = "%d %B %Y"
|
# Default is "6th July 2049".
|
||||||
|
long_date_format = ""
|
||||||
|
|
||||||
|
# Date format used for blog posts.
|
||||||
|
# Default is "31st Dec 2011".
|
||||||
|
short_date_format = ""
|
||||||
|
|
||||||
# Custom separator used in title tag and posts metadata (between date, time to read, and tags).
|
# Custom separator used in title tag and posts metadata (between date, time to read, and tags).
|
||||||
separator = "•"
|
separator = "•"
|
||||||
|
@ -2,9 +2,10 @@
|
|||||||
{% import "macros/page_header.html" as macros_page_header %}
|
{% import "macros/page_header.html" as macros_page_header %}
|
||||||
{% import "macros/page_desc.html" as macros_page_desc %}
|
{% import "macros/page_desc.html" as macros_page_desc %}
|
||||||
{% import "macros/content.html" as macros_content %}
|
{% import "macros/content.html" as macros_content %}
|
||||||
{% import "macros/cards_posts.html" as macros_cards_posts %}
|
{% import "macros/cards_pages.html" as macros_cards_pages %}
|
||||||
{% import "macros/set_title.html" as macros_set_title %}
|
{% import "macros/set_title.html" as macros_set_title %}
|
||||||
{% import "macros/paginate.html" as macros_paginate %}
|
{% import "macros/paginate.html" as macros_paginate %}
|
||||||
|
{% import "macros/format_date.html" as macros_format_date %}
|
||||||
|
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang = "en">
|
<html lang = "en">
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
{%- set show_pages = section.pages -%}
|
{%- set show_pages = section.pages -%}
|
||||||
{% endif -%}
|
{% endif -%}
|
||||||
|
|
||||||
{{ macros_cards_posts::cards_posts(pages=show_pages) }}
|
{{ macros_cards_pages::cards_pages(pages=show_pages) }}
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
{% if paginator %}
|
{% if paginator %}
|
||||||
|
43
templates/macros/cards_pages.html
Normal file
43
templates/macros/cards_pages.html
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
{% macro cards_pages(pages) %}
|
||||||
|
|
||||||
|
<div class="cards">
|
||||||
|
{%- for page in pages %}
|
||||||
|
<div class="card">
|
||||||
|
{% if page.extra.local_image %}
|
||||||
|
<img class="card-image" alt={{ page.extra.local_image }} src="{{ get_url(path=page.extra.local_image) }}">
|
||||||
|
{% elif page.extra.remote_image %}
|
||||||
|
<img class="card-image" alt={{ page.extra.remote_image }} src="{{ page.extra.remote_image }}">
|
||||||
|
{% else %}
|
||||||
|
<div class="card-image-placeholder"></div>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
<div class="card-info">
|
||||||
|
<h1 class="card-title">
|
||||||
|
{% if page.extra.link_to %}
|
||||||
|
<a rel="noopener noreferrer" target="_blank" href={{ page.extra.link_to }}>{{page.title}}</a>
|
||||||
|
{% else %}
|
||||||
|
<a href={{ page.permalink }}>{{page.title}}</a>
|
||||||
|
{% endif %}
|
||||||
|
</h1>
|
||||||
|
|
||||||
|
<div class="meta">
|
||||||
|
{% if page.date %}
|
||||||
|
{{ macros_format_date::format_date(date=page.date, short=false) }}
|
||||||
|
{% endif %}
|
||||||
|
{% if page.draft %}
|
||||||
|
<span class="draft-label">DRAFT</span>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card-description">
|
||||||
|
{% if page.description %}
|
||||||
|
{{ page.description }}
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% endfor -%}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% endmacro cards_pages %}
|
@ -1,43 +0,0 @@
|
|||||||
{% macro cards_posts(pages) %}
|
|
||||||
|
|
||||||
<div class="cards">
|
|
||||||
{%- for page in pages %}
|
|
||||||
<div class="card">
|
|
||||||
{% if page.extra.local_image %}
|
|
||||||
<img class="card-image" alt={{ page.extra.local_image }} src="{{ get_url(path=page.extra.local_image) }}">
|
|
||||||
{% elif page.extra.remote_image %}
|
|
||||||
<img class="card-image" alt={{ page.extra.remote_image }} src="{{ page.extra.remote_image }}">
|
|
||||||
{% else %}
|
|
||||||
<div class="card-image-placeholder"></div>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
<div class="card-info">
|
|
||||||
<h1 class="card-title">
|
|
||||||
{% if page.extra.link_to %}
|
|
||||||
<a rel="noopener noreferrer" target="_blank" href={{ page.extra.link_to }}>{{page.title}}</a>
|
|
||||||
{% else %}
|
|
||||||
<a href={{ page.permalink }}>{{page.title}}</a>
|
|
||||||
{% endif %}
|
|
||||||
</h1>
|
|
||||||
|
|
||||||
<div class="meta">
|
|
||||||
{%- if page.date %}
|
|
||||||
{{ page.date | date(format=config.extra.date_format | default (value="%d %B %Y")) }}
|
|
||||||
{% endif -%}
|
|
||||||
{% if page.draft %}
|
|
||||||
<span class="draft-label">DRAFT</span>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card-description">
|
|
||||||
{% if page.description %}
|
|
||||||
{{ page.description }}
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{% endfor -%}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{% endmacro cards_posts %}
|
|
@ -14,7 +14,7 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if page.date %}
|
{% if page.date %}
|
||||||
<li>{{ page.date | date(format=config.extra.date_format | default (value="%d %B %Y")) }} {{ separator }}</li>
|
<li>{{ macros_format_date::format_date(date=page.date, short=true) }} {{ separator }}</li>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<li title="{{ page.word_count }} words"> {{ page.reading_time }} min read</li>
|
<li title="{{ page.word_count }} words"> {{ page.reading_time }} min read</li>
|
||||||
@ -31,7 +31,7 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if page.updated %}
|
{% if page.updated %}
|
||||||
</ul><ul class="meta last-updated"><li>Last updated on {{ page.updated | date(format=config.extra.date_format | default (value="%d %B %Y")) }}</li>
|
</ul><ul class="meta last-updated"><li>Last updated on {{ macros_format_date::format_date(date=page.updated, short=true) }}</li>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
33
templates/macros/format_date.html
Normal file
33
templates/macros/format_date.html
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
{% macro format_date(date, short) %}
|
||||||
|
|
||||||
|
{% if config.extra.short_date_format %}
|
||||||
|
{{ date | date(format=config.extra.short_date_format) }}
|
||||||
|
{% elif config.extra.long_date_format %}
|
||||||
|
{{ date | date(format=config.extra.long_date_format) }}
|
||||||
|
{% else %}
|
||||||
|
{% set day = date | date(format='%-d') | int %}
|
||||||
|
|
||||||
|
{% if day in [11, 12, 13] %}
|
||||||
|
{% set suffix = "th" %}
|
||||||
|
{% else %}
|
||||||
|
{% set last_digit = day % 10 %}
|
||||||
|
{% if last_digit == 1 %}
|
||||||
|
{% set suffix = "st" %}
|
||||||
|
{% elif last_digit == 2 %}
|
||||||
|
{% set suffix = "nd" %}
|
||||||
|
{% elif last_digit == 3 %}
|
||||||
|
{% set suffix = "rd" %}
|
||||||
|
{% else %}
|
||||||
|
{% set suffix = "th" %}
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{# Return the date. #}
|
||||||
|
{% if short == true %}
|
||||||
|
{{ date | date(format="%-d") }}{{ suffix }} {{ date | date(format="%b %Y") }}
|
||||||
|
{% else %}
|
||||||
|
{{ date | date(format="%-d") }}{{ suffix }} {{ date | date(format="%B %Y") }}
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% endmacro %}
|
@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
{% if post.date %}
|
{% if post.date %}
|
||||||
<div class="date">
|
<div class="date">
|
||||||
{{ post.date | date(format=config.extra.date_format | default (value="%d %B %Y")) }}
|
{{ macros_format_date::format_date(date=post.date, short=false) }}
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
{% block main_content %}
|
{% block main_content %}
|
||||||
|
|
||||||
|
<main>
|
||||||
{% if section.extra.section_path -%}
|
{% if section.extra.section_path -%}
|
||||||
{% set extra_section = get_section(path=section.extra.section_path) %}
|
{% set extra_section = get_section(path=section.extra.section_path) %}
|
||||||
{% endif -%}
|
{% endif -%}
|
||||||
@ -10,7 +11,7 @@
|
|||||||
{{ macros_page_desc::page_desc(desc=section.extra.header, page=section) }}
|
{{ macros_page_desc::page_desc(desc=section.extra.header, page=section) }}
|
||||||
{% endif -%}
|
{% endif -%}
|
||||||
|
|
||||||
<main class="list">
|
<div class="list">
|
||||||
<div>
|
<div>
|
||||||
{{ macros_page_header::page_header(title=section.title) }}
|
{{ macros_page_header::page_header(title=section.title) }}
|
||||||
</div>
|
</div>
|
||||||
@ -23,6 +24,7 @@
|
|||||||
|
|
||||||
{% set max = section.extra.max_posts | default(value=999999) %}
|
{% set max = section.extra.max_posts | default(value=999999) %}
|
||||||
{{ macros_list_posts::list_posts(posts=pages, max=max) }}
|
{{ macros_list_posts::list_posts(posts=pages, max=max) }}
|
||||||
|
</div>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
{% if paginator %}
|
{% if paginator %}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user