{% extends "base.html" %} {# Blog Home Template Optimized home page template for blog sites. Features: - No action bar (cleaner for home page) - Prominent recent posts section - Simplified hero section - Blog-optimized layout Usage: Set `template: blog/home.html` in home page frontmatter Or set `type: blog` on home page to auto-select #} {% from 'partials/content-components.html' import tag_list %} {% block content %}
{# Simplified Hero Section #}

{{ page.title | default(site.config.title) }}

{% if page.metadata.get('description', '') %}

{{ page.metadata.get('description', '') }}

{% endif %}
{# Main Content #} {% if content and content.strip() %}
{{ content | safe }}
{% endif %} {# Recent Posts - Prominent Section #} {# Show recent posts by default for blog sites #} {% set show_recent = page.metadata.get('show_recent_posts', true) %} {% if show_recent %} {# Find blog section and get recent posts #} {# Default to "posts" since blog template creates posts/ section #} {% set blog_section_name = page.metadata.get('blog_section', 'posts') %} {% set blog_section_candidates = site.sections | selectattr('name', 'equalto', blog_section_name) | list if site.sections else [] %} {% set blog_section = blog_section_candidates[0] if blog_section_candidates else None %} {% if blog_section and blog_section.pages %} {% set recent = blog_section.pages | selectattr('date') | sort_by('date', reverse=true) | limit(6) %} {% elif site.pages %} {# Fallback: find blog posts by URL path or metadata type #} {% set blog_posts = [] %} {% for p in site.pages %} {% if p.metadata.get('type') == 'blog' or '/blog/' in p.relative_url or '/posts/' in p.relative_url %} {% set _ = blog_posts.append(p) %} {% endif %} {% endfor %} {% set recent = blog_posts | selectattr('date') | sort_by('date', reverse=true) | limit(6) %} {% else %} {% set recent = [] %} {% endif %} {% if recent %}

Recent Posts

{% if blog_section %} View all posts → {% endif %}
{% for post in recent %}
{% if post.metadata.get('image') or post.metadata.get('cover') %}
{{ post.title }}
{% endif %}

{{ post.title }}

{% if post.date %} {% endif %} {% if post.metadata.get('description') or post.excerpt %}

{{ post.metadata.get('description') | default(post.excerpt) | truncate(150) }}

{% endif %} {% if post.tags %} {% endif %} Read more →
{% endfor %}
{% endif %} {% endif %}
{% endblock %}