{# This Template Shows a paginated page of the Posts of a section with a short summary. This Template can also be used directly for the index eg: example.com/ or as the rendering template for Sections, eg: example.com/blog/ example.com/software/ #} {%- extends "base.html" %} {%- set uglyurls = config.extra.uglyurls | default(value=false) -%} {%- if config.extra.offline %}{% set uglyurls = true %}{% endif %} {%- block seo %} {{- super() }} {%- if config.title %} {%- set title = config.title %} {%- else %} {%- set title = "" %} {%- endif %} {%- if config.extra.title_addition and title %} {%- set title_addition = title_separator ~ config.extra.title_addition %} {%- elif config.extra.title_addition %} {%- set title_addition = config.extra.title_addition %} {%- else %} {%- set title_addition = "" %} {%- endif %} {%- set description = config.description %} {{- macros_seo::seo(config=config, title=title, title_addition=title_addition, description=description, is_home=true) }} {%- endblock seo %} {%- block content %}
{%- for page in paginator.pages %}
{{- macros::title_index(page=page, config=config) }} {%- if config.extra.meta_index.position %} {%- if config.extra.meta_index.position == "top" or config.extra.meta_index.position == "both" %} {{- macros::meta_index(page=page, config=config) }} {%- endif %}{%- endif %}

{%- if page.summary %} {{ page.summary | markdown(inline=true) | safe }} {%- elif page.description %} {{ page.description | safe }} {%- elif page.content %} {{ page.content | striptags | truncate(length=150) | safe }} {%- elif page.extra.static_thumbnail %} {%- endif %} ...more

{%- if config.extra.meta_index.position %} {%- if config.extra.meta_index.position == "bottom" or config.extra.meta_index.position == "both" %} {{- macros::meta_index(page=page, config=config) }} {%- endif %} {%- endif %}
{%- endfor %} {{- macros::pagination(paginator=paginator, config=config) }}
{%- if config.extra.recent | default(value=true) %} {#- The following line is checking if the template is being used for the root or a section #} {%- if current_path is matching("^(/[[:alpha:]][[:alpha:]])?(/page/[[:digit:]]+)?/$") %} {%- set sec = "" %} {%- else %} {%- if lang == config.default_language %} {%- set sec = current_path | trim_start_matches(pat="/") | split(pat="/page/") | slice(end=1) | join(sep="") | trim_end_matches(pat="/") %} {%- set sec = sec ~ "/" %} {%- else %} {%- set sec = current_path | trim_start_matches(pat="/" ~ lang ~ "/") | split(pat="/page/") | slice(end=1) | join(sep="") | trim_end_matches(pat="/") %} {%- set sec = sec ~ "/" %} {%- endif %} {%- 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 %}
{{ macros::translate(key="Recent", default="Recent", i18n=i18n) }} {%- set recent_items=config.extra.recent_items | default(value=9) -%} {%- for page in section_item.pages | slice(end=recent_items) %} {{- macros::page_listing(page=page, config=config) }} {%- endfor %}
{%- endif %} {%- endblock content %}