I think it’s common to have a blog that have no special frontpage - and goes straight to recent posts.
I should emphasize: I’m not talking about getting rid of custom frontpage completely. But I need a way to replace it with full-featured section if needed.
Yes, I need full pagination on homepage. Pagination across posts. I need my homepage to be the
post section, actually. The way of faking it you proposed just shows that maybe I did a bad job in explaining the issue - it’s a move in a wrong direction.
I could rather pretend that
example.org/post/ is my homepage and redirect from homepage to there, but that’s ugly. I don’t want to have links of a form
example.org/page/2 should be the second page of my blog.
Currently I’m achieving required behaviour by custom paginator as mentioned in the opening post. There are some unused pages generated (original index from
post section), but that’s not a big deal. It was good enough for me until recently, when I tried to access the pagination from base layout.
Default paginator is available from global context. For a paginator defined in some concrete layout, I see no way to access it from baseof layout.
I could reorganize my theme to move more stuff into concrete layouts (into concrete block definitions), but running into this issue let me to think about the root cause of the issue.
And the root issue - I have to fake
post section in the homepage instead of having it there.
So, there is a new parameter for site config, called
homeSection. If it is not set, there is no changes for theme and site creator at all.
And if it is set to some section name, then that section index will be created at the root of site instead of usual location. Homepage template (
layouts/index.html) is not needed in this case, as its’ place is filled already.
Theme creators may or may not design around this use case - that means including
layouts/index.html into theme or not.
Let’s say site creator has a fully-featured theme at hands. He may use it in the way it works now, or he may set the
homeSection parameter and promote that section to be homepage instead of what’s defined by theme.
If there is a theme without
layouts/index.html, then, depending on the presence of
homeSection parameter, homepage will either use default list layout to show all the site pages (if parameter is not set) or will use whatever layout is set for that section to show that section pages (if parameter is set).