如何在流动文件级别访问 Shopify 中的自定义 JSON 文件

And*_*tov 3 json liquid shopify

我知道可以在前端的 JavaScript 级别访问 JSON 文件,但是是否可以/assets/在 Liquid 级别访问文件夹(或其他地方,如果需要)中的 JSON 文件及其内容?

我希望有类似的东西

{{ '/assets/some_file.json.liquid' | example_object.inner_object.some_key }}

Dav*_*zar 5

在服务器端渲染期间,Shopify将 Liquid 转换为一个巨大的字符串,并将其作为浏览器食物通过网络发送。HTML、CSS 和 JS。

如果您有一个包含 JSON 的资产 foo.js,您确实可以将其呈现给客户端,如下所示

{{ 'foo.js' | asset_url }}
Run Code Online (Sandbox Code Playgroud)

但是您不能使用 JSON 本身来控制任何类型的服务器端渲染。您可以在 JS 文件中嵌入 Liquid 标签并将其命名为 foo.js.liquid,Liquid 中的任何内容都会影响渲染,但是为什么要为 JSON 部分烦恼呢?

如果您对特殊的液体渲染非常感兴趣,请设置您的主题以使用设置及其值进行渲染。

或者,一旦 JSON 下载到客户端,您就可以自由地使用纯 JS 来获得荣耀。