{% extends 'public/base.html' %} {% block title %}{{ site_name }} - {{ site_tagline }}{% endblock %} {% block schema %} {% if posts_schema %} {% endif %} {% endblock %} {% block content %}

{{ site_name }}

{{ site_tagline }}

{% if posts.items %}
{% for post in posts.items %}
{% if post.featured_image %} {% set card_img = images_map.get(post.featured_image) if images_map is defined else None %}
{% if card_img and card_img.width and card_img.height %} {% if card_img.get_srcset('avif') %} {% endif %} {% if card_img.get_srcset('webp') %} {% endif %} {{ post.featured_image_alt or post.title }} {% else %} {{ post.featured_image_alt or post.title }} {% endif %}
{% endif %}

{{ post.title }}

· {{ post.language|upper }}
{% if post.excerpt %}

{{ post.excerpt }}

{% endif %} {{ pt('read_more') }}
{% endfor %}
{% if posts.pages > 1 %} {# Pagination links: include lang= ONLY when the visitor is NOT on the default language. Generating /?page=N&lang= as an internal link would otherwise let Google index /?lang=&page=N as a distinct URL with its own canonical, defeating the /?lang= → / 301-redirect in index(). url_for() drops keys whose value is None. #} {%- if current_language and current_language != (default_language or 'en') %} {%- set _pag_lang = current_language %} {%- else %} {%- set _pag_lang = none %} {%- endif %} {% endif %} {% else %}

{{ pt('no_posts') }}

{{ pt('check_back') }}

{% endif %} {% endblock %}