2

我正在开发类似于 Google Analytics 的分析产品,并希望为我们的 Shopify 用户提供集成。

我只需要做两件事:

1) 将我们的 JavaScript 片段插入到所有商店页面的正文中

2)在购买后仅在“谢谢”页面的正文中插入第二个转换片段以记录销售,并传回订单总额和订单号

你能指出我正确的方向吗?


ScriptTag 端点看起来是最佳的,只是它似乎没有提供任何方法来区分“谢谢”页面和其他页面,或者将订单详细信息从“谢谢”页面传递到脚本中。

似乎我需要一个可以将任意代码注入所有页面的端点,或者一个可以让我更改主题布局文件以在标记之前添加代码的端点</body>

如果我能做到这一点,看起来我可以在模板语言中使用条件来仅在 URL 与“谢谢”页面 URL 匹配时显示转换代码,并使用 {{ total_price }} 和 {{ order_number }} 在该代码中。

卸载 webhook 是否允许我在应用程序的权限被撤销之前进行更改?如果允许我编辑布局文件,我似乎需要一种在卸载时进行清理以从主题中删除我的代码的方法。

4

2 回答 2

5

它有两种方法可以解决这个问题:

ScriptTags:您已经知道这种方法。确实,脚本会加载到每个页面中,但是您可以document.url在 js 中查看您所在的页面,并根据该页面有条件地执行代码。

以这种方式插入的脚本在“onLoad”事件期间执行。那时您可以访问 DOM,并且基本上可以对页面做任何您想做的事情。

Snippets:使用Assets端点,您可以对用户的主题进行任意更改。小心这种力量!对页面进行复杂更改的推荐方法是在主题中创建自定义片段并添加您的内容,然后告诉用户将include标签插入到需要出现的代码中。这减少了主主题文件中的混乱。

我建议尽可能使用 ScriptTags。如下所述,它们不需要清理,并且在设置应用程序时无需用户交互。

--

至于卸载 webhook:它是在应用从商店中卸载触发的,因此您不再有权访问。它旨在用于触发您的清理(删除数据库条目等)。请注意,ScriptTags 和 Webhook 订阅会自动清理,但您对主题所做的任何更改都不会

于 2012-08-30T13:42:17.130 回答
-1

您在一篇文章中提出了很多问题。

对于您的#1 和#2,请阅读:

http://api.shopify.com/scripttag.html

其次,对于您的应用安装/卸载,请阅读:

http://api.shopify.com/webhook.html

请注意有关 app/uninstalled 的部分,因为您对此感兴趣。

至于知道何时有人安装您的应用程序,这完全取决于您自己。应该不会太难,因为您可能首先阅读了如何制作和应用程序。Shopify 在 github 上提供了大量样板代码,几乎可以向您展示您在此处询问的所有内容。

于 2012-08-29T23:32:34.477 回答