You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Shopify店铺首页/自定义页面获取并展示博客文章?

Shopify首页/自定义页面展示最新博客文章+产品列表解决方案

核心疑问解答

blogs全局对象并非仅能在博客模板中访问,在首页、自定义页面等任意模板文件里都可以正常调用,你之前的方案没产生输出,大概率是代码写法偏差或店铺配置问题导致的。

具体实现代码

1. 按发布时间排序的最新博客文章列表

{% assign latest_articles = blogs | map: 'articles' | flatten | sort: 'published_at' | reverse | limit: 5 %}
{% if latest_articles.size > 0 %}
  <h2>最新博客文章</h2>
  <ul>
    {% for article in latest_articles %}
      <li>
        <a href="{{ article.url }}">{{ article.title }}</a>
        <span>{{ article.published_at | date: "%Y-%m-%d" }}</span>
      </li>
    {% endfor %}
  </ul>
{% else %}
  <p>暂无已发布的博客文章</p>
{% endif %}
  • 若只想展示某一个特定博客的文章,把代码里的blogs替换成对应博客的handle(比如你的博客URL是your-shop.com/blogs/news,就写成blogs['news'])。
  • limit: 5可以调整为你需要展示的文章数量。

2. 按发布时间排序的最新产品列表

{% assign latest_products = collections.all.products | sort: 'published_at' | reverse | limit: 5 %}
{% if latest_products.size > 0 %}
  <h2>最新产品</h2>
  <ul>
    {% for product in latest_products %}
      <li>
        <a href="{{ product.url }}">{{ product.title }}</a>
        <span>{{ product.price | money }}</span>
      </li>
    {% endfor %}
  </ul>
{% else %}
  <p>暂无上架产品</p>
{% endif %}
  • 若只想展示指定产品集合的内容,把collections.all替换成对应集合的handle(比如collections['featured-products'])。

之前方案无效的排查方向

  • 检查博客handle是否正确:在Shopify后台「在线商店→博客帖子」里点击对应博客,查看URL末尾的handle字符串,确保代码里的handle和后台完全一致。
  • 确认博客有已发布文章:如果目标博客下没有任何已发布的文章,代码自然不会输出内容。
  • 验证模板放置位置:把代码直接放到首页模板(index.liquid)或者自定义页面模板(比如新建page.latest-list.liquid,后台创建页面时选择该模板)中,避免放到未被正确调用的局部代码片段里。

内容的提问来源于stack exchange,提问作者world_sword

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 02:25:46