Sitecoreの追跡と分析をJSS Next.jsアプリで有効にする
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
JSSは、RESTフェッチ方法を使用してサーバー側でレンダリングされたアプリケーションに対してのみ、Sitecoreの追跡と分析をサポートします。このタイプのトラッキングは、JSS Tracking APIを使用したclient-side trackingとは異なり、both Static Site Generation (SSG) and Server-side Rendering (SSR).
現在、トラッキングと分析をSitecore GraphQL Edgeスキーマで使用することはできません。
JSS Next.jsアプリでSitecoreの追跡と分析を有効にするには、アプリケーションで以下を使用する必要があります。
-
サーバー側レンダリング: src/pagesディレクトリ内のルートは、関数getServerSidePropsを実装する必要があります。
このチュートリアルでは、Next.jsアプリケーションで完全なSitecore追跡と分析を有効にするために必要な手順について説明します。
このチュートリアルでは、次の方法について説明します。
-
JSS Next.jsアプリケーションでのレイアウト サービス要求の追跡を有効にします。
-
Sitecore設定を更新します。
JSS Next.jsアプリケーションでのレイアウト サービス要求の追跡の有効化
Sitecoreの追跡と分析を有効にするには、Next.js JSSアプリケーションでレイアウト サービス要求の追跡を有効にし、サーバー側レンダリングを使用し、追跡用の正しいヘッダーを渡す必要があります。
Sitecoreの追跡と分析を有効にするには、次の手順に従います。
-
アプリケーションで現在静的生成を使用している場合は、サーバー側レンダリングに切り替えます。
-
Sitecore 10.0.1以降、SitecoreはデフォルトですべてのCookieにSecureフラグを設定します。ローカル環境でHTTPSを有効にします。
-
アプリケーションで現在Sitecore GraphQL Edgeスキーマを使用している場合は、Sitecore Layout Service REST APIに切り替えます。切り替え後、アプリケーションはサービスRestLayoutServiceを使用し、デフォルトで追跡を有効にし、必要なヘッダーをリクエストと共に渡します。
トラッキングを明示的に有効にする場合は、Next.js JSSアプリのルートディレクトリのファイルsrc/lib/layout-service-factory.tsで、trackingパラメーターを定義します。
ターゲットの地理的な理由の法的要件に応じて、訪問者の同意に基づいてWebトラッキングを有効または無効にすることができます。
Sitecore設定を更新する
JSSアプリで追跡と分析が有効になっている場合は、転送ヘッダーを読み取るようにSitecoreに指示し、開発中はロボット検出を無効にする必要があります。
転送された要求ヘッダーを指定します
Next.js SSRルートを使用する場合、レイアウト サービス リクエストはクライアントの元のIPアドレスをX-Forwarded-Forヘッダーで送信します。
ヘッダーを読み取るようにSitecore指示し、設定の値を設定することで、分析が正しい元のクライアントIPアドレスを追跡するようにする必要がありますAnalytics.ForwardedRequestHttpHeader。
SitecoreでAnalytics.ForwardedRequestHttpHeaderを設定するには:
-
Next.js JSSアプリのルート ディレクトリにあるファイルsitecore/<AppName>.configで、settingsノードで、コメントを解除または追加します。
開発中のロボット追跡の有効化
開発中、Sitecore Analyticsは ロボット検出を有効にするため、分析アクティビティはロボット アクティビティとしてフラグが付けられ、追跡されません。ロボットのアクティビティを追跡してアプリをテストするには、ロボットの検出を無効にします。
この変更は、本番環境ではなく、開発only行う必要があります。
開発中にロボットの追跡を有効にするには:
-
Next.js JSSアプリのルート ディレクトリでsitecore/{:placeholder-token:}<APP_NAME>{/:placeholder-token:}.configファイルを開き、settingsノードで以下を追加するか、既に存在する場合はコメントを解除します。