【发布时间】:2021-08-09 07:30:17
【问题描述】:
我将尽力解释这一点,如果看起来令人困惑,请见谅。
我有一个自定义主题。我正在尝试从博客中获取文章并将它们放入 7 个单独的标记页面中。本质上是创建单独的博客模板标准的一个博客模板。这些页面引入了一个分页为 6 的部分。
我可以将博客文章放入该部分并进行分页,但我无法过滤掉不必要的标签。当我在分页循环中使用 if/unless 语句时,它只是没有呈现不必要的语句,但仍然基于它进行分页,所以我在第一页有 3 篇文章,在第二页有 2 篇,依此类推。为什么它会这样做是有道理的。
我已经在我的分配标签和分页标签上尝试了“where”过滤器,但没有用。当我在 Shopify Slack 上询问时,有人提到使用带有端点“/blogs/{blog_id}/tagged/{tag_id}”的 Section Render API,但返回该页面的所有 HTML,我不知道我是怎么做到的d 对其进行解析和分页。至少可以说,Section Render API 文档是想要的。而且我对 API 的经验有限
我最接近的答案是这个答案:https://stackoverflow.com/a/60000460/12948634
液体解决方案的问题是我可以将“视图”应用到标记的帖子页面,但我仍然需要对其进行分页。我仍然必须使用显然没有过滤的 {% paginate blog.articles %}。分页不包含在这个主题中,我不太确定如何将它添加到我的“blog-content.liquid”文件中而不影响主标记页面。
有什么想法吗?代码如下:
<div id="article-index-card-section" class="g-flex">
{% assign blog = blogs.{blog_id} %}
{% paginate blog.articles by 6 %}
{% for article in blog.articles %}
<div class="article-index-card g-vertical">
<div style="display: flex; flex-direction: column;">
<img class="article-index-card-image" src="{{ article.image.src | img_url: 'master' }}">
<div class="article-index-card-text">
<h4>{{ article.title }}</h4>
<p class="t-body">{{ article.excerpt }}</p>
</div>
</div>
<div class="article-index-card-btn btn">
<a href="{{ article.url }}">Learn More</a>
</div>
</div>
{% endfor %}
<div>
{{ paginate | default_pagination: next: '>', previous: '<' }}
</div>
{% endpaginate %}
</div>
【问题讨论】:
标签: pagination themes shopify liquid