Skip to content

paginate Tag

The paginate tag wraps content that may be paginated. It’s a structural tag used with paginated collections.

{% paginate %}
<!-- Paginated content here -->
{% endpaginate %}

The tag renders its content directly without any wrapper elements. It serves as a semantic marker for paginated sections.

{% paginate %}
{% for post in posts %}
<article>{{ post.title }}</article>
{% endfor %}
{% endpaginate %}

Blog listing with pagination:

{# templates/blog.liquid #}
<main class="blog-listing">
<h1>{{ blog.title }}</h1>
{% paginate %}
<div class="posts-grid">
{% for post in posts %}
<article class="post-card">
<h2><a href="/posts/{{ post.slug }}">{{ post.title }}</a></h2>
<time>{{ post.publishDate | date: '%B %d, %Y' }}</time>
<p>{{ post.description | truncate: 150 }}</p>
</article>
{% endfor %}
</div>
{% endpaginate %}
</main>