对于高级用例,有时需要以特定方式检索某个值。例如,您可能使用 zaraz.track 将产品列表发送到 Zaraz,但要将这些数据发送到的第三方工具需要产品的总费用。或者,您可能希望处理某个值,例如将其转换为小写。
Cloudflare Zaraz 使用 JSONata,使您能够对数据执行复杂操作。借助 JSONata,您可以针对 Zaraz Context 计算表达式,从而访问和操作各种值。要了解可用的值以及如何访问它们,请查阅完整参考。您也可以参阅 完整的 JSONata 文档 ↗,了解 JSONata 的更多功能。
要在 Zaraz 中使用 JSONata,请按以下步骤操作:
-
在 Cloudflare 仪表板中,前往 **Tag Setup(标签设置)**页面。
Go to Settings ↗ -
前往 Tools configuration(工具配置)> Tools(工具)。
-
在已配置的工具旁选择 Edit(编辑)。
-
选择一个操作或添加新操作。
-
选择要使用 JSONata 的字段,并用双花括号包裹 JSONata 表达式,例如
{{ expression }}。
JSONata 也可在 Triggers、Tool Settings 和 String Variables 中使用。
将字符串转换为小写在需要与其他内容比较时很有用,例如与正则表达式比较。假设原始字符串来自名为 myCookie 的 cookie,可使用 {{ $lowercase(system.cookies.myCookie) }} 将其转为小写。
假设您使用 zaraz.ecommerce() 如下发送购物车内容:
zaraz.track('Product List Viewed',
{ products:
[
{
sku: '2671033',
name: 'V-neck T-shirt',
price: 14.99,
quantity: 3
},{
sku: '2671034',
name: 'T-shirt',
price: 10.99,
quantity: 2
},
],
}
);在要显示总和的字段中,输入 {{ $sum(client.products.(price * quantity)) }}。这会将每个产品的价格乘以其数量,然后汇总总额。