【问题标题】:how to add custom script in shopify without using script tag如何在不使用脚本标签的情况下在 shopify 中添加自定义脚本
【发布时间】:2021-03-11 11:50:19
【问题描述】:

like HT Script 应用(https://apps.shopify.com/ht-script)。可以添加自定义脚本like

"var a=1";

我们可以在 html 标头中看到自定义脚本,例如

<script>var a=1;</script>

我知道 Shopify API 支持脚本标签来添加自定义脚本,例如

<script src="http://xxxx.js"></script>

那么,HT Sciprt应用背后的原理是什么,为什么不需要src。

【问题讨论】:

标签: shopify shopify-api shopifyscripts


【解决方案1】:

应用具有以下权限:

这意味着它使用以下访问范围

  • read_themes
  • write_themes

它可能是如何工作的

  1. 阅读主题列表

    GET /admin/api/2021-01/themes.json

  2. 通过该列表,它可以找到活跃的主题。

    字段“role”等于“main”。

  3. 使用活动主题 ID,它可以访问资产。

    GET /admin/api/2021-01/themes/{theme_id}/assets.json?asset[key]=layout/theme.liquid

  4. 使用该文件的内容,您可以使用 html 解析器根据需要修改标题。

  5. 用另一个 api 调用更新同一个文件

    PUT /admin/api/2021-01/themes/{theme_id}/assets.json

当然,您可以在应用程序中创建一些 cron 作业,以确保您修改的脚本始终与模板保持同步。

有用的链接:

【讨论】:

  • 真是个好答案,我明白了。还有一个问题,我写的js脚本内容数据,HT脚本保存到shopify还是HT脚本自己的服务器?
  • 你可以用两种方法。 1.将您的文件上传到资产"asset": { "key": "assets/your_script.js", "value": "&lt;content&gt;" } 然后像这样包含它:&lt;script src="{{ 'your_script.js' | asset_url }}" defer="defer"&gt;&lt;/script&gt; 或者创建将在商店的每个页面上加载的script tag(您需要托管js文件)我建议第一个选项会更简单并且实施起来更快。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-18
  • 1970-01-01
相关资源
最近更新 更多