Skip to main content
Sitecore Documentation
  • Learn
  • Downloads
  • Changelog
  • Roadmap
CDPCloud Portal
Sitecore CDP
  • データブラウザ
  • 用語集
  1. セッション特性
  1. Sitecore CDP
  2. 開発者センター

コードスニペット

Markdown version
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

セッション 特性のコードを書くための出発点として使えるJavaScript関数のリストはこちらです。

トリガーセッション関数

この機能は、顧客のセッション特性の計算を引き起こした特定のセッションを特定するために設計されています。現在のセッション内のすべてのイベントを手動で検索・反復する代わりに、この関数を使って計算に関連するイベントに直接アクセスできます。セッション特性計算を開始したイベントタイプの配列を返すことで、プロセスを簡素化します。

(function () { return triggerSession.events.map(e => e.type); })();

例えば、作成したセッション特性がVIEW、CLICK、SUBMITなどのイベントでトリガーされた場合、関数は以下の値を含む配列を返します: "VIEW", "CLICK", "SUBMIT"。

トリガーセッションを特定する必要があるときにこの機能を使え、以下のコードスニペットで示すように効率的かつ多用途なツールとなります。

顧客のページビュー数を数えましょう

この関数は顧客のセッション内のページVIEWイベントの数をカウントします。 トリガーセッション関数を使い、セッションイベントをループし、一致するVIEWイベントを見つけるたびにカウンターを増分します。ループが完了すると、VIEWイベントの総カウントを返します。VIEWイベントが見つからなければ、0を返します。

(function() { var counter = 0; if (triggerSession && Array.isArray(triggerSession.events)) { for (var i = 0; i < triggerSession.events.length; i++) { if (triggerSession.eventsi.type === 'VIEW') { counter++; } } } return counter; })();

顧客が最後に閲覧したページを特定しましょう

この関数は、顧客のセッションで記録されたイベントに基づいて、顧客が最後に閲覧したページを特定します。 トリガーセッション関数を用いて、一致するVIEWイベントのセッションイベントをループします。一致するVIEWイベントが見つかれば、そのイベントに関連付けられたページを返します。VIEWイベントが見つからなければ、関数は文字列 "No VIEW Events"を返します。

(function () { if (triggerSession && Array.isArray(triggerSession.events)) { for (var i = 0; i < triggerSession.events.length; i++) { var event = triggerSession.eventsi; if (event.type === 'VIEW') { return event.arbitraryData.page; } } } return "No VIEW Events"; })();

顧客が利用規約ページを見たかどうか確認してください

この関数は顧客の現在のセッションイベントをチェックし、POLICYページ(利用規約を表す)が閲覧されたかどうかを確認します。 トリガーセッション関数を使ってセッション内のすべてのイベントをループします。POLICYページのVIEWイベントが見つかれば1を返します。そうでなければ、0を返し、セッション中にページが閲覧されていないことを示します。

(function () { var viewedPolicy = 0;

if (triggerSession && Array.isArray(triggerSession.events)) { for (var i = 0; i < triggerSession.events.length; i++) { var event = triggerSession.eventsi;

if ( event.type === 'VIEW' && event.arbitraryData && event.arbitraryData.page === 'POLICY' ) { viewedPolicy = 1; break; // stop checking once found } } }

return viewedPolicy; })();

顧客が特定のバナーを見たかどうか確認してください

この関数は、顧客がセッション中に特定のバナーを閲覧したかどうかを確認します。 トリガーセッション関数を用いて、セッションイベントをループし、指定されたバナー参照に一致するVIEWイベントを探します。一致するイベントが見つかれば、関数はtrueを返し、バナーが閲覧されたことを示します。一致するイベントが見つからなければ、falseを返します。

(function () { // Replace with the actual banner reference var bannerRef = "/banners/special-offer"; if (triggerSession && Array.isArray(triggerSession.events)) { for (var i = 0; i < triggerSession.events.length; i++) { var event = triggerSession.eventsi; if (event.type === 'VIEW' && event.arbitraryData.page === bannerRef) { return true; } } } return false; })();

顧客の好みを捉える

この関数はセッションデータから顧客の好みをキャプチャし、保存します。Tシャツサイズやズボンサイズの空文字列などのデフォルト値でuserPreferencesオブジェクトを初期化します。その後、トリガーセッション関数を使ってセッションイベントをループし、それに応じて設定を更新します。例えば、TシャツサイズページのCLICKイベントが見つかると、関数はtshirtSize値を更新します。最後に、ユーザー設定と連結された文字列を返します。

(function () { // Initialize an object to store user preferences with empty strings instead of null var userPreferences = { language: triggerSession.language, currency: triggerSession.currency, tshirtSize: "", pantsSize: "" };

if (triggerSession && Array.isArray(triggerSession.events)) { for (var i = 0; i < triggerSession.events.length; i++) { var event = triggerSession.eventsi;

if (event.type === 'CLICK' && event.arbitraryData.page === 'tShirtSize') { userPreferences.tshirtSize = event.arbitraryData.value; }

if (event.type === 'CLICK' && event.arbitraryData.page === 'pantsSize') { userPreferences.pantsSize = event.arbitraryData.value; } } }

// Log the final user preferences console.log('User preferences:'); console.log('Language: ' + userPreferences.language); console.log('Currency: ' + userPreferences.currency); console.log('T-shirt size: ' + userPreferences.tshirtSize); console.log('Pants size: ' + userPreferences.pantsSize);

// Return a concatenated string of the user preferences instead of an object return "Language: " + userPreferences.language + ", Currency: " + userPreferences.currency + ", T-shirt size: " + userPreferences.tshirtSize + ", Pants size: " + userPreferences.pantsSize; })();

この記事を改善するための提案がある場合は、 お知らせください!

© Copyright , Sitecore A/S or a Sitecore affiliated company.
All rights reserved.

Privacy policySitecore Trust CenterTerms of use
CDPCloud Portal