Skip to content

Paginated URL generation#138

Closed
simonhamp wants to merge 6 commits into
statamic:masterfrom
simonhamp:feature/paginated-url-generation
Closed

Paginated URL generation#138
simonhamp wants to merge 6 commits into
statamic:masterfrom
simonhamp:feature/paginated-url-generation

Conversation

@simonhamp

Copy link
Copy Markdown
Contributor

Incorporates, builds on and simplifies #137 (so #137 may be redundant as a result if this is preferred)

Allows the developer to define which URLs are "paginators" and the config they'd like to use to generate the pages in their config/statamic/ssg.php.

Consider the following config:

    'paginators' => [
        '/journal' => [
            'collection' => 'blog',
            'perPage' => 12,
        ],
    ],

The generator uses sensible defaults: the page name and URL path part defaults to 'page', and the per-page defaults to 10. So you only need to override the parameters you need to change - minimum required is collection.

NB: This DOES NOT create the route for you that will actually render these pages (yet). But in theory, it could... it just needs to capture more information (such as the view, template and entry ID to load). I may add this later.

@jesseleite

Copy link
Copy Markdown
Contributor

Appreciate you taking the time to PR! ❤️ That said, this one doesn't do much different from @jasonvarga's gist example, which we never felt was ready to merge in.

Closing this in favour of #140, which should work for the user automatically without any extra config, while also respecting multisite collection indexes, as well as collection tag per-page settings, filters, query scopes, pagination links, auto_links, etc. 👌

@jesseleite jesseleite closed this Jul 11, 2023
@simonhamp

Copy link
Copy Markdown
Contributor Author

Agreed! Pagination detection feels like a much friendlier solution 👍🏼 nice work!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants