メタフィールドのトリガー、手順を追って
Shopify Flowのステップバイステップチュートリアルです。商品、バリエーション、注文、お客様、およびその他8つのオーナータイプにおけるメタフィールドの変更方法について、以前の値も併せて解説します。
メタフィールドは、Shopifyに専用のフィールドがない情報をストアが保存する場所であり、Shopify Flowはそれらの変更に対して反応することができません。以下の5つのトリガーは反応することができ、previousValueも保持しているため、ワークフローでは値の増加と減少を区別することができます。
これらはすべて、定義通り動作します。アプリの「**メタフィールド・トリガー」**ページで、監視対象とするメタフィールドを選択します。そこに追加していないメタフィールドについては、トリガーは発動しません。設定方法については、メタフィールドのトリガー をご覧ください。
このページの内容:メタフィールドの更新, 商品のメタフィールドの更新, 商品のバリエーションのメタフィールドの更新, 注文のメタフィールドの更新, お客様のメタフィールドの更新

メタフィールドの更新
監視対象のメタフィールドが変更された際に発火します。対象となる所有者タイプは、商品、バリエーション、コレクション、お客様、注文、下書き注文、会社、会社のロケーション、ブログ、ブログ記事、ページなど、いずれのタイプでも対象となります。
| ~による火災 | Shopify Webhookと変更検出機能です。バリエーション、ブログ、ブログ記事、およびページのメタフィールドは、スケジュールに従ってチェックされます。 |
| 許可 | 商品、バリエーション、コレクションのデータへのアクセス |
| 電源が入りました | メタフィールドの定義に従い、アプリの「**メタフィールド・トリガー」**ページで |
次のような用途にご利用ください
- 型指定されたトリガーを持たないオーナータイプ:コレクション、会社、ページ、ブログ記事。
metafieldKeyに基づいて、複数のメタフィールドを監視し、分岐を行うワークフローです。
メタフィールド Update がワークフローに送信する内容
| Shopify Flowにおける変数 | 種類 | その中身 |
|---|---|---|
metafieldKey |
本文 | 更新されたメタフィールドの namespace.key (Shopify Flow でのフィルタリング用) |
resourceType |
本文 | リソースの種類(PRODUCT、PRODUCTVARIANT、コレクション、お客様、注文、会社、会社所在地、ARTICLE、BLOG、PAGE) |
resourceId |
本文 | 更新されたリソースのGID |
metafield |
目的 | 更新されたメタフィールド |
metafield.id |
ID | メタフィールドのグローバルID |
metafield.namespace |
本文 | メタフィールドのネームスペース |
metafield.key |
本文 | メタフィールドのキー |
metafield.value |
本文 | メタフィールドの値 |
metafield.previousValue |
本文 | この変更前の値です。メタフィールドが作成されたばかりの場合はNullとなります。 |
metafield.type |
本文 | メタフィールドの型 |
eventId |
本文 | このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。 |
例:変更されたコレクションのメタフィールドへの反応
- アプリで「**Metafield Triggers」**を開き、「**トリガーを追加」**をクリックして、所有者タイプとして「**コレクション」**と定義を選択し、保存してください。
- Shopify Flowで、トリガーとして「**メタフィールドの更新」**を選択してください。
- 条件を追加します:
metafieldKeyがcustom.banner_textに等しく、resourceTypeがCOLLECTIONに等しいこと。 - 「
{{metafield.previousValue}} -> {{metafield.value}}」および「{{resourceId}}」を使用して、社内メールを送信する機能を追加します。 - ワークフローを有効にしてください。
製品のメタフィールドの更新
監視対象の製品メタフィールドが変更された際に発火し、その製品がネイティブのShopify Flow参照として設定されます。
| ~からの火災 | Shopify Webhook と変更検出 |
| 許可 | 商品、バリエーション、コレクションのデータへのアクセス |
| 電源が入りました | これを使用するShopify Flowワークフローを有効にすると、これがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。 |
次のような用途にご利用ください
- 商品に直接操作を行ってください:タグ付け、公開、別のメタフィールドの更新などを行ってください。
- 数値メタフィールドのしきい値:評価、在庫予測、サプライヤーのリードタイムなど。
「Product Metafield Update」がワークフローに送信する内容
| Shopify Flowにおける変数 | 種類 | その中身 |
|---|---|---|
product |
製品(Shopify) | メタフィールドが変更された商品です。Shopifyのフル機能版であるため、すべてのフィールドおよびShopify Flow独自の商品アクションが利用可能です。 |
metafieldKey |
本文 | 変更されたメタフィールドの「namespace.key」(Shopify Flowでのフィルタリング用) |
metafield |
目的 | 更新されたメタフィールド |
metafield.id |
ID | メタフィールドのグローバルID |
metafield.namespace |
本文 | メタフィールドのネームスペース |
metafield.key |
本文 | メタフィールドのキー |
metafield.value |
本文 | メタフィールドの値 |
metafield.previousValue |
本文 | この変更前の値です。メタフィールドが作成されたばかりの場合はNullとなります。 |
metafield.type |
本文 | メタフィールドの型 |
eventId |
本文 | このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。 |
例:評価が3未満の商品にタグを付ける
- アプリの「**メタフィールド・トリガー」**ページで、商品メタフィールドを追加してください。
- Shopify Flowで「**製品のメタフィールドの更新」**を選択します。
- 条件を追加します:
metafieldKeyがreviews.ratingと等しいこと。 - メタフィールドの値はテキストとして渡されるため、数値を比較するコードを追加してください:return
dropped: Number(input.metafield.value) < 3 && Number(input.metafield.previousValue) >= 3。 - コードの「
dropped」出力に条件を追加し、次に「low-rating」の商品タグを追加してください。 - ワークフローを有効にしてください。


商品バリエーションのメタフィールドの更新
監視対象のバリエーション・メタフィールドが変更された際に発火します。親プロダクトは参照として渡され、バリエーションはresourceIdとして渡されます。
| ~による火災 | Shopifyからはその件に関するWebhookが送信されないため、スケジュールに従って確認しました |
| 許可 | 商品、バリエーション、コレクションのデータへのアクセス |
| 電源が入りました | これを使用するShopify Flowワークフローを有効にすると、この機能がオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。 |
次のような用途にご利用ください
- 各バリエーションのデータを製品単位に集計してください。例えば、すべてのバリエーションの中で最も短いリードタイムなどです。
- バリエーションレベルの属性をフィードに同期します。
「商品バリエーションメタフィールド更新」がワークフローに送信する内容
| Shopify Flowにおける変数 | 種類 | その中身 |
|---|---|---|
product |
製品(Shopify) | メタフィールドが変更されたバリエーションの親商品です(商品のメタフィールドを記述する際にこれを使用してください)。完全なShopify商品であるため、そのすべてのフィールドおよびShopify Flow独自の商品アクションを利用できます。 |
resourceId |
本文 | メタフィールドが変更された商品バリエーションのGID |
metafieldKey |
本文 | 変更されたメタフィールドの namespace.key (Shopify Flow でのフィルタリング用) |
metafield |
目的 | 更新されたメタフィールド |
metafield.id |
ID | メタフィールドのグローバルID |
metafield.namespace |
本文 | メタフィールドの名前空間 |
metafield.key |
本文 | メタフィールドのキー |
metafield.value |
本文 | メタフィールドの値 |
metafield.previousValue |
本文 | この変更前の値です。メタフィールドが作成されたばかりの場合はNullとなります。 |
metafield.type |
本文 | メタフィールドの型 |
eventId |
本文 | このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。 |
例:バリアントのメタフィールドを、その商品バリエーションまでコピーする
- **「メタフィールド・トリガー」**ページで、バリエーション・メタフィールドを追加してください。
- Shopify Flowで「**商品バリエーションのメタフィールドの更新」**を選択してください。
productに「Update product」というメタフィールドを追加し、値として「{{metafield.value}}」を設定してください。- ワークフローを有効にしてください。
メタフィールドの更新順序
監視対象の注文のメタフィールドが変更された際に発火し、注文をネイティブ参照として扱います。
| ~からの火災 | Shopify Webhook と変更検出 |
| 許可 | 注文データのアクセス |
| 電源が入りました | これを使用するFlowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。 |
次のような用途にご利用ください
- アプリが注文に書き込むデータ(配達日、リスクスコア、ERP番号など)に対応します。
- 承認メタフィールドの状態が切り替わった際に、フルフィルメントの手順を開始します。
「メタフィールドの更新」がワークフローに送信するオーダー
| Shopify Flowにおける変数 | 種類 | その中身 |
|---|---|---|
order |
注文(Shopify) | メタフィールドが変更された注文です。Shopifyの完全な注文であるため、そのすべてのフィールドおよびShopify Flow独自の注文アクションを利用できます。 |
metafieldKey |
本文 | 変更されたメタフィールドの namespace.key (Shopify Flow でのフィルタリング用) |
metafield |
目的 | 更新されたメタフィールド |
metafield.id |
ID | メタフィールドのグローバルID |
metafield.namespace |
本文 | メタフィールドの名前空間 |
metafield.key |
本文 | メタフィールドのキー |
metafield.value |
本文 | メタフィールドの値 |
metafield.previousValue |
本文 | この変更前の値です。メタフィールドが作成されたばかりの場合はNullとなります。 |
metafield.type |
本文 | メタフィールドの型 |
eventId |
本文 | このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。 |
例:承認メタフィールドの値が「true」になった時点で注文を発注する
- **「メタフィールド・トリガー」**ページで、注文メタフィールドを追加してください。
- Shopify Flowにおけるピッキング順序メタフィールドの更新。
- 条件を追加します:
metafieldKeyがcustom.approvedに等しく、metafield.valueがtrueに等しいこと。 - 「
order.fulfillmentOrders」に対して、「**Releaseフルフィルメント注文保留」**を含む「For each」を追加してください。 - ワークフローを有効にしてください。
お客様メタフィールドの更新
監視対象のお客様メタフィールドが変更された際に発火し、お客様をネイティブレファレンスとして指定します。
| ~による火災 | Shopify Webhook と変更検出 |
| 許可 | お客様データへのアクセス |
| 電源が入りました | これを使用するShopify Flowワークフローを有効にすると、それがオンになります。この機能専用のスイッチは、アプリの「**トリガー」**ページにあります。 |
次のような用途にご利用ください
- メタフィールドに保存されているロイヤリティランク、与信限度額、または誕生日。
- フォームやアプリによって入力されたお客様属性を、CRMに同期します。
「お客様メタフィールドの更新」がワークフローに送信する内容
| Shopify Flowにおける変数 | 種類 | その中身は |
|---|---|---|
customer |
お客様(Shopify) | メタフィールドが変更されたお客様です。Shopifyのフルプランをご利用のお客様であるため、そのすべてのフィールドおよびShopify Flow独自の顧客アクションが利用可能です。 |
metafieldKey |
本文 | 変更されたメタフィールドの namespace.key (Shopify Flow でのフィルタリング用) |
metafield |
目的 | 更新されたメタフィールド |
metafield.id |
ID | メタフィールドのグローバルID |
metafield.namespace |
本文 | メタフィールドのネームスペース |
metafield.key |
本文 | メタフィールドのキー |
metafield.value |
本文 | メタフィールドの値 |
metafield.previousValue |
本文 | この変更前の値です。メタフィールドが作成されたばかりの場合はNullとなります。 |
metafield.type |
本文 | メタフィールドの型 |
eventId |
本文 | このイベントのIDです。アプリの「イベント履歴」でこれを検索すると、具体的に何が送信されたかを確認できます。 |
例:ゴールドランクに達したお客様にタグを付ける
- **「メタフィールド・トリガー」**ページで、お客様メタフィールドを追加してください。
- Shopify Flowで「**顧客メタフィールドの更新」**を選択してください。
- 条件を追加します:
metafieldKeyがloyalty.tierに等しく、metafield.valueがgoldに等しいこと。 - 「
gold」という顧客タグを追加し、VIPチームに社内メールを送信してください。 - ワークフローを有効にしてください。
今後の手順
型指定されたトリガーは、汎用トリガーに加えて発動し、そのイベントを共有するため、両方を有効にしても、プランのカウントに二重に計上されることはありません。
- トリガーの完全なリファレンス - 1つのページにすべてのトリガーをまとめます。
- 適切なトリガーの選び方 - どちらがご状況に合いますか。
- カスタムトリガー - 組み込みのトリガーに適切なものがない場合は、独自のトリガーを作成してください。
- イベント履歴とトラブルシューティング - 何が発射されたのか、そして何が搭載されていたのかを確認してください。
