Confusion trying to determine the page_template

Trying to mimic my WordPress setup, I still fail.

What I want to achieve is to:

  1. have a list of pages (/blog/PAGETITLE),
  2. have a list of blog articles (/blog/YEAR/MONTH/TITLE).

Of those, the blog articles should have a different template than the pages.

My current structure, including one page and one example post, is as follows:

├───content
│   │   test-page.md
│   │   _index.md
│   │
│   └───2020
│       └───08
│               test-article.md
├───sass
├───static
└───themes
    └───my-theme-name
        ├───sass
        ├───static
        ├───templates
        │       base.html
        │       comments.html
        │       index.html
        │       page.html
        │       section.html
        └───themes

According to what I read in the documentation, page.html is the template for pages and section.html is for blog posts. However, both test-page.md and test-article.md use page.html now. I tried to explicitly set section.html in content/_index.md:

+++
title = "Blog Test"
sort_by = "date"
template = "index.html"
page_template = "section.html"
+++

Yet, section.html is ignored.

I can only imagine that I am too dumb to understand the documentation. Can anyone enlighten me?

This is weird, it should be working as you expect.

Can you add a zip of that code so I can have a look at it?

Sure. Sadly, I cannot attach ZIPs here, so here’s a demo ZIP on my server:

(This is far from being finished. The theme from my blog is mostly adapted, but I cannot go further yet. Still, 2021 might be my year of leaving WordPress.)

Pretty sure that you find the problem easily. I gave up at this point…