コンテンツにスキップ

JSONataの使用

高度なユースケースでは、特定の方法で値を取得できることが有用な場合があります。たとえば、zaraz.trackを使用してZarazに製品のリストを送信している場合、送信先のサードパーティツールが製品の合計コストを必要とすることがあります。あるいは、値を操作したい場合、たとえば小文字に変換することが考えられます。

Cloudflare Zarazは、JSONataを使用してデータに対して複雑な操作を実行できるようにします。JSONataを使用すると、Zaraz Contextに対して式を評価でき、さまざまな値にアクセスして操作することができます。利用可能な値やそれらにアクセスする方法について詳しくは、完全なリファレンスを参照してください。また、JSONataの機能についての詳細は、完全なJSONataドキュメントを参照してください。

Zaraz内でJSONataを使用するには、次の手順に従ってください。

  1. Cloudflareダッシュボードにログインし、アカウントとドメインを選択します。
  2. Zaraz > ツール設定 > ツールに移動します。
  3. すでに設定したツールの横にある編集を選択します。
  4. アクションを選択するか、新しいアクションを追加します。
  5. JSONataを使用したいフィールドを選択し、JSONata式を二重波括弧で囲みます。例: {{ expression }}

JSONataは、トリガー、ツール設定、文字列変数内でも使用できます。

文字列を小文字に変換する

文字列を小文字に変換することは、他のものと比較したい場合に便利です。たとえば、元の文字列がmyCookieという名前のクッキーから来ていると仮定すると、値を小文字に変換するには{{ $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)) }}と入力します。これにより、各製品の価格に数量を掛け、その合計を求めます。