aboutsummaryrefslogtreecommitdiff
path: root/templates/posts.html
blob: e4562ab9dca55aeca38a3429fec8c1babfda2138 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
{#
This Page Shows the Posts Grouped by Year: example.com/posts/
This Template can also be used as the rendering template for Sections, eg: example.com/blog/  example.com/software/
#}

{% extends "base.html" %}

{%- block seo %}
  {{- super() }}
  {%- set title = "Posts" %}

  {%- if config.title %}
    {%- set title_addition = title_separator ~ config.title %}
  {%- else %}
    {%- set title_addition = "" %}
  {%- endif %}

  {%- set description = config.description %}

  {{- macros_head::seo(config=config, title=title, title_addition=title_addition, description=description, is_home=true) }}
{%- endblock seo %}

{%- block content %}
    {#- The following line is checking if the template is being used for the posts page or a section #}
    {%- if current_path is matching("^(/[[:alpha:]][[:alpha:]])?/posts/$") %}
      {%- set sec = "" %}
    {%- else %}
      {%- set langpath = "/" %}
      {%- if lang != config.default_language %}
        {%- set langpath = "/" ~ lang ~ "/" %}
      {%- endif %}

      {%- set sec = current_path | trim_start_matches(pat=langpath) | split(pat="/page/") | slice(end=1) | join(sep="") | trim_end_matches(pat="/") %}
      {%- set sec = sec ~ "/" %}
    {%- endif %}

    {%- if lang == config.default_language %}
    {%- set section_item = get_section(path=sec ~ "_index.md") %}
    {%- else %}
    {%- set section_item = get_section(path=sec ~ "_index." ~ lang ~ ".md") %}
    {%- endif %}
    {%- if sec != "" %}
      {#- the section always overrides the config -#}
      {%- if section_item.extra and 'hide_section_dates' in section_item.extra -%}
        {%- set hide_section_dates = section_item.extra.hide_section_dates -%}
      {%- elif config.extra.hide_section_dates -%}
        {%- set hide_section_dates = true -%}
      {%- endif -%}
    {%- endif %}
    <div>
      {%- if section_item.title %}
      <h2>{{ section_item.title }}</h2>
      {%- endif %}
      {%- for year, posts in section_item.pages | group_by(attribute="year") %}
      {%- if not hide_section_dates %}
      {%- if section_item.title %}
      <h3>{{ year }}</h3>
      {%- else %}
      <h2>{{ year }}</h2>
      {%- endif %}
      {%- endif %}
      {%- for post in posts %}
      <p><a href="{{ post.permalink | safe }}{%- if config.extra.uglyurls %}index.html{%- endif %}">{{ post.title }}</a>{%- if not hide_section_dates %} - <time datetime="{{ post.date }}">{{ post.date | date(format="%F") }}</time>{%- endif %}</p>
      {%- endfor %}
      {%- endfor %}
    </div>
{%- endblock content %}