温馨提示:本文翻译自stackoverflow.com,查看原文请点击:sorting - Shopify
blogs shopify sorting

sorting - Shopify

发布于 2020-04-14 17:10:29

如何使Shopify排序博客帖子从最旧到最新?

现在最新的帖子在最上面。讲述故事的博客不起作用。自然,您必须从乞讨中读一个故事。

其他一些博客必须按默认顺序排序-从最新到较旧。即最新的顶部。

问:如何对某些博客进行Old first排序?

查看更多

提问者
ses
被浏览
13
drip 2020-02-04 04:21

这取决于博客文章的数量。

有3种方法。


液体方式

您可以覆盖文章分页并反转循环。

例:

{% paginate blog.articles by 9999 %}
  {% for article in blog.articles reversed  %}
     ...
  {% endfor %}
{% endpaginate %}

文章数量越大,DOM加载速度就越慢。

因此,如果您有1000多篇文章,这不是一个好的解决方案。

REST API

您可以注册一个私有应用程序,仅设置Store content like articles, blogs, comments, pages, and redirects为“读取权限,并且所有内容都将被禁用。

然后,您将需要请求以下URL :(https://API_KEY:API_PASS@STORE.myshopify.com/admin/api/2020-01/blogs/BLOG_ID/articles.json?limit=250如果您的文章超过250条,则需要乘以倍)

并反转结果数组。

如果您有很多文章,则此解决方案也不是很好。

GraphQL

最好的方法是在此处使用StoreFront GraphQL API,在这里可以反转结果。

查询示例:

{
    blogByHandle(handle:"news"){
    articles(first: 50, reverse: true){
      edges {
        node {
          title
        }
      }
    }
  }
}

这样,您将保持分页完整(因为GraphQL返回可用于分页的Cursor),并且您将请求保持最少。