ブログ記事が更新されたら、Slackに通知を送信する

概要

Shopifyのブログ記事が更新されるたびに、コンテンツチームにSlackで通知したい場合は、このワークフローを使用してください。この設定では、Workflow Trigger Extensionsがブログ記事の変更を検知し、Shopify Flowが「**ブログ記事の更新」**トリガーでワークフローを開始し、Flow Transactional Emailが更新されたブログ記事のタイトルと本文をSlackワークフローのWebhookに送信します。

動画ガイド

始める前に

  • Shopifyの管理画面にWorkflow Trigger Extensionsがインストールされています。
  • Shopify Flow にアクセスできます。
  • SlackワークフローのWebhook URLの準備が整いました。
  • あらかじめ設定済みのHTTPリクエストからSlack Webhookリクエストを送信したい場合は、「Flow Transactional Email」アプリがインストールされている必要があります。Shopifyの基本プラン以外をご利用の場合は、Shopifyフロー自体からHTTPリクエストを送信することができます。

「ブログ記事の更新」トリガーを有効にする

Shopifyの管理画面で、**「Apps」を開き、「Workflow Trigger Extensions」を選択します。「Triggers」を開き、検索フィールドに「Blog」と入力して、「Blog Post Update」**を有効にします。

アプリに「ブログとページ」へのアクセス権がまだない場合、Shopifyがその場でアクセス権を要求します。ダイアログで承認すると、トリガーが有効になります。このトリガーで始まる「Shopify Flow」ワークフローを有効にすると、トリガーも同時に有効になります。

これにより、アプリがあなたのブログ投稿を監視し、Shopify Flowで「**ブログ投稿の更新」**ワークフローを開始するようになります。

「トリガー」ページで「ブログ」を検索し、「ブログ記事の更新」がオンになっている状態
トリガー、検索対象:ブログ「ブログ投稿の更新」を有効にする。

Slackのワークフローを作成する

Webhookをトリガーとして動作するSlackワークフローを作成します。Webhookの設定では、titlebodyなど、Slackに送信したいコンテンツに対応する変数を定義します。

次に、コンテンツチーム用のチャンネル(例:#content-team)にメッセージを送信するアクションを追加します。これにより、チームが更新された投稿を確認し、適切な対応をとることができます。

タイトルと本文の変数を含むSlackワークフローのWebhookトリガー
タイトルと本文の変数を含むSlackワークフローのWebhookトリガー
コンテンツチームのチャンネルにメッセージを送信するSlackワークフローアクション
コンテンツチームのチャンネルにメッセージを送信するSlackワークフローアクション

Shopify Flow を作成する

Shopify Flow を開き、新しいワークフローを作成します。トリガーピッカーで、Workflow Trigger Extensionsのトリガーから「**Blog Post Update」**を選択します。

Shopify Flow Workflow Trigger Extensions の「ブログ投稿の更新」トリガーを使用したワークフロー
Shopify Flow Workflow Trigger Extensions の「ブログ投稿の更新」トリガーを使用したワークフロー

ShopifyプランでFlowの組み込み機能である**「HTTPリクエストの送信」**アクションがサポートされていない場合は、代わりにFlowの「**トランザクションメール」アプリから「HTTPリクエスト」**を選択してください。これにより、あらかじめ設定されたリクエストからSlack Webhookを送信できるようになります。

Shopify Flow FlowのトランザクションメールからのHTTPリクエストを表示するアクションピッカー
Shopify Flow FlowのトランザクションメールからのHTTPリクエストを表示するアクションピッカー

Flow Transactional Email で HTTP リクエストを設定する

Flow Transactional Email」で、「**HTTP リクエスト」**に移動し、Slack ワークフロー用のリクエストを作成してください。詳細については、「Flow Transactional Email を使用して HTTP リクエストを行う方法」 をご覧ください。

  • 名前:Blog Post Updated Slack Webhook のような、わかりやすいもの
  • URL: あなたのSlackのWebhook URL
  • HTTPメソッド:POST
  • 見出し:Content-Type = application/json
Slack Webhook 用のフロー・トランザクションメール HTTP リクエスト設定
Slack Webhook 用のフロー・トランザクションメール HTTP リクエスト設定

その後、Shopify Flow に戻り、ブログ記事のデータをリクエスト本文にマッピングします。「ブログ記事の更新」トリガーの記事フィールドを使用して、Slack が更新されたタイトルとコンテンツを受け取れるようにします。

css
{
  "body": {
    "title": "{{article.title}}",
    "body": "{{article.body}}"
  }
}
Shopify Flow の「HTTP リクエスト」アクションで、更新されたブログのタイトルと本文を Slack に送信する
Shopify Flowの「HTTPリクエスト」アクションを使用して、更新されたブログのタイトルと本文をSlackに送信する

Slackのメッセージは次のようなものです

フローが実行されると、SlackはShopifyから更新されたブログ記事のタイトルと本文を受け取ります。これにより、コンテンツチームはブログを手動で確認することなく、変更内容を即座に確認することができます。

更新されたブログ記事のタイトルと本文が表示されたSlackメッセージ
更新されたブログ記事のタイトルと内容を表示したSlackメッセージ

推奨されるワークフローの構成

  1. Workflow Trigger Extensions 「ブログ記事の更新」トリガーを通じて、ブログ記事の更新を検知します。
  2. Shopify Flow 「**ブログ投稿の更新」**トリガーから始まります。
  3. Flow Transactional Emailは、POSTリクエストをSlackワークフローのWebhookに送信します。
  4. **Slackは、**コンテンツチームのチャンネルにブログのタイトルと本文を投稿します。

トラブルシューティング

Workflow Trigger Extensionsの**「トリガー」「ブログ記事の更新」**がオンになっていること、および「**権限」**ページで「ブログとページへのアクセス」が許可されていることを確認してください。

Slackのワークフローが引き続き**「Webhookからの送信」**を使用していること、WebhookのURLが正しいこと、およびFlowのトランザクションメールリクエストでPOSTContent-Type: application/jsonが使用されていることを確認してください。

Shopify Flowアクションがトリガーデータを正しくマッピングしていることを確認してください。リクエスト本文には、更新された記事の値(例:{{article.title}}{{article.body}})が渡されている必要があります。