【问题标题】:How to edit different shopify storefront with one script from Shopify app如何使用 Shopify 应用中的一个脚本编辑不同的 shopify 店面
【发布时间】:2021-12-11 05:37:56
【问题描述】:

我的 Shopify 应用需要编辑店面以更改现有元素。在 Shopify 中有两种方法可以更改店面代码

  1. 编辑液体主题文件
  2. 使用 Asset API 添加客户端 JS

但是,不同的商家在他们的商店中使用不同的主题。我的应用程序有什么方法可以与每个主题一起使用,或者我如何编写支持最大主题的脚本?如果您能提供一些提示或分享您对此问题的想法,将会非常有帮助。

【问题讨论】:

标签: shopify shopify-app shopify-template shopify-api shopify-api-node


【解决方案1】:

你错了,存在更多的方式。

在店面 2.0 上,您可以创建 theme app extension 这是今天推荐的方式。

更新:在 2.0 上,您应该建议您的客户用您的部分替换他们的部分,这是目前干净且推荐的方式。

在 1.0 上,很大程度上取决于您的项目复杂性或您的应用所涉及的代码部分...

许多应用程序使用the theme Rest API,您可以在应用程序安装脚本中添加一个步骤来下载已发布的主题。之后有两个选项:

  1. 您可以搜索和替换特定的内容,您可以编写脚本然后读取主题文件并替换您需要替换的内容,然后自动进行更改并在商店中重新发布您的更改。更快,无需人工干预

  2. 使用下载的代码,使用 IDE 轻松读取和手动替换代码,然后使用相同的 API 手动上传更改。速度慢,需要人工干预,但更灵活。

您现在可以从选项 2 开始,并继续为选项 1 开发脚本。

【讨论】:

  • 是的先生,我接受,但我的问题不是在店面中添加元素,而是编辑现有元素。而且据我所知,我们只能使用 Theme 应用扩展框架添加元素。而且主题应用扩展只支持 store 2.0 不支持 store 1.0。那么,我的应用程序如何支持 store 1.0 呢?我是 Shopify 的新手,我的知识在这里可能有误。任何进一步的建议都会非常有帮助。
  • 非常感谢@chefjuanpi
【解决方案2】:

在搜索有关此问题的更多信息后,我得到了一些见解,例如不幸的是,我们无法使用相同的脚本编辑不同的主题,因为每个主题可能非常不同。一些主题甚至可能在这部分有不同的文件名,或者它们可能有完全不同的 HTML 结构。

没有简单而通用的方法来解决这个问题。方式之一:

您可以在主题文件中进行一些启发式操作,并尝试找到插入代码的正确位置。例如,langify 就是这样做的。它正在扫描整个主题并寻找插入代码的位置。

您可以要求客户手动添加您的代码。许多应用程序这样做是因为它会导致更少的错误。您只需要准备详细的手册如何正确设置它。

【讨论】:

  • 这是旧方法,是的,它很复杂,现在随着 OS2.0 的变化,现在推荐的方法是使用主题应用程序扩展,这样客户可以添加/替换一个部分与您的特殊部分。但是 OS2.0 是新的,现在我们正处于一个同时使用 OS 和 OS2.0 的时期,更多细节在这里shopify.dev/apps/online-store/verify-support
猜你喜欢
  • 2019-09-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-13
  • 1970-01-01
  • 2021-01-24
  • 1970-01-01
相关资源
最近更新 更多