diff options
Diffstat (limited to 'templates')
| -rw-r--r-- | templates/blocks/changelog.html | 1 | ||||
| -rw-r--r-- | templates/blog-post.html | 9 | ||||
| -rw-r--r-- | templates/macros/blog.html | 51 |
3 files changed, 41 insertions, 20 deletions
diff --git a/templates/blocks/changelog.html b/templates/blocks/changelog.html new file mode 100644 index 0000000..eee2bf1 --- /dev/null +++ b/templates/blocks/changelog.html @@ -0,0 +1 @@ +{# Changelog entries are rendered by the blog post template. #} diff --git a/templates/blog-post.html b/templates/blog-post.html index fe751ae..a8eaf37 100644 --- a/templates/blog-post.html +++ b/templates/blog-post.html @@ -13,6 +13,7 @@ {% endfor %} {% set needs_trail_assets = features.trail %} +{% set latest_change = this.changelog.blocks | max(attribute="date") if this.changelog else none %} {% block meta %} {{ super() }} @@ -22,9 +23,9 @@ <meta property="article:published_time" content="{{ this.publication_date }}T00:00:00+02:00"> {% endif %} - {% if this.updated_date %} + {% if latest_change %} <meta property="article:modified_time" - content="{{ this.updated_date }}T00:00:00+02:00"> + content="{{ latest_change.date }}T00:00:00+02:00"> {% endif %} {% if this.category %} {% set category = site.get("/categories/" + this.category) %} @@ -46,8 +47,8 @@ {% set blog_url = '/blog' | url(absolute=True, external=True) %} {% set blog_id = blog_url ~ '#blog' %} {% set modified_date = this.publication_date %} - {% if this.updated_date %} - {% set modified_date = this.updated_date %} + {% if latest_change %} + {% set modified_date = latest_change.date %} {% endif %} {% set post_description = bag('blog.tagline') %} {% if this.description %} diff --git a/templates/macros/blog.html b/templates/macros/blog.html index 13c2526..d076762 100644 --- a/templates/macros/blog.html +++ b/templates/macros/blog.html @@ -29,6 +29,8 @@ {% endfor %} {% endif %} + {% set latest_change = post.changelog.blocks | max(attribute="date") if post.changelog else none %} + <article class="h-entry"> <header> <div> @@ -54,12 +56,12 @@ </dd> </div> {% endif %} - {% if post.updated_date and post.publication_date and (post.updated_date > post.publication_date) %} + {% if latest_change and post.publication_date and latest_change.date > post.publication_date %} <div> <dt>Last updated:</dt> <dd> - <time datetime="{{ post.updated_date | dateformat('yyyy-MM-dd') }}" - class="dt-updated">{{ post.updated_date | dateformat("d MMMM yyyy") }}</time> + <time datetime="{{ latest_change.date | dateformat('yyyy-MM-dd') }}" + class="dt-updated">{{ latest_change.date | dateformat("d MMMM yyyy") }}</time> </dd> </div> {% endif %} @@ -82,20 +84,37 @@ {% endif %} </header> <div class="e-content">{{ post.body }}</div> - {% if post.tags %} + {% if post.tags or post.changelog %} <footer> - <ul aria-label="Tags"> - <li>Tagged with</li> - {% for tag in post.tags %} - <li> - {% set tag_slug = tag|trim|lower|replace(" ", "-") %} - <a href="{{ ('/blog/tag/' ~ tag_slug ~ '/')|url }}" - rel="tag" - class="p-category">{{ tag }}</a> - {%- if not loop.last -%}, {%- else -%}.{%- endif -%} - </li> - {% endfor %} - </ul> + {% if post.tags %} + <ul aria-label="Tags"> + <li>Tagged with</li> + {% for tag in post.tags %} + <li> + {% set tag_slug = tag|trim|lower|replace(" ", "-") %} + <a href="{{ ('/blog/tag/' ~ tag_slug ~ '/')|url }}" + rel="tag" + class="p-category">{{ tag }}</a> + {%- if not loop.last -%}, {%- else -%}.{%- endif -%} + </li> + {% endfor %} + </ul> + {% endif %} + {% if post.changelog %} + <section class="changelog" aria-labelledby="changelog-heading"> + <h3 id="changelog-heading">Changelog</h3> + <ul> + {% for entry in post.changelog.blocks %} + <li> + <time datetime="{{ entry.date | dateformat('yyyy-MM-dd') }}"> + {{ entry.date | dateformat("d MMMM yyyy") }} + </time> + <span>{{ entry.description }}</span> + </li> + {% endfor %} + </ul> + </section> + {% endif %} </footer> {% endif %} </article> |
